ProHoster > блог > Администрација > # GitLab 13.4 објавен со складиштето HashiCorp за CI променливи и Kubernetes Agent
# GitLab 13.4 објавен со складиштето HashiCorp за CI променливи и Kubernetes Agent
Изданието 13.4 е објавено со складирање HashiCorp за CI променливи, Kubernetes Agent и безбедносен центар, како и функции за префрлување во Стартер
Во GitLab, ние секогаш размислуваме како можеме да им помогнеме на корисниците да го намалат ризикот, да ја подобрат ефикасноста и да ја подобрат брзината на испорака на вашата омилена платформа. Овој месец додадовме многу корисни нови функции кои ги прошируваат безбедносните можности, го намалуваат бројот на пропусти, ја зголемуваат ефикасноста, ја поедноставуваат работата со GitLab и му помагаат на вашиот тим да испорачува функции уште побрзо. Се надеваме дека ќе ви бидат корисни главните карактеристики на изданието, како и 53 други нови функции, додадена во ова издание.
Друг начин да се намалат ризиците е да се користи ново Агент на GitLab Kubernetes. Оперативните тимови можат да распоредат кластери Kubernetes од GitLab без да мора да го изложуваат својот кластер на целиот интернет. Исто така, воведуваме поддршка за автоматска контрола на верзијата за нови датотеки со состојба на Terraform GitLab управуваше со државата Terraform за поддршка на усогласеноста и леснотијата на дебагирање. Конечно, безбедносната табла за пример стана Центар за безбедност на GitLab со извештаи за ранливост и безбедносни поставки.
Фабио придонесе значително придонес в прикажување на покриеноста на кодот во разликите во барањето за спојување - функција која се чекаше многу долго во заедницата на GitLab. Ова е навистина важен придонес со нетривијални промени кои бараа постојана соработка со членовите на тимот на GitLab и влијаеја на многу области на проектот како што се UX, предниот дел и задниот дел.
Главни карактеристики на изданието GitLab 13.4
Користете ги клучевите HashiCorp Vault во CI работните места
Во изданието 12.10, GitLab воведе можност за примање и пренесување клучеви на CI работни места со помош на управувачот со задачи на GitLab (GitLab runner). Сега се шириме автентикација со помош на JWT, додавајќи нова синтакса secrets да поднесе .gitlab-ci.yml. Ова ќе го олесни поставувањето и користењето на складиштето HashiCorp со GitLab.
Интеграцијата на GitLab со Kubernetes одамна овозможи да се распореди во кластерите на Kubernetes без потреба од рачна конфигурација. На многу корисници им се допадна леснотијата на користење на овој пакет, додека други наидоа на некои тешкотии. За тековната интеграција, вашиот кластер мора да биде достапен од Интернет за да може GitLab да пристапи до него. За многу организации, тоа не е можно бидејќи го ограничуваат пристапот до кластерите поради безбедносни, усогласеност или регулаторни причини. За да ги заобиколат овие ограничувања, корисниците требаше да ги изградат своите алатки на врвот на GitLab, во спротивно нема да можат да ја користат оваа функција.
Денес го воведуваме агентот GitLab Kubernetes, нов начин за распоредување во кластерите на Kubernetes. Агентот работи во вашиот кластер, така што нема потреба да го изложувате на целиот Интернет. Агентот го координира распоредувањето со барање нови промени од GitLab, наместо GitLab да турка ажурирања на кластерот. Без разлика кој метод на GitOps го користите, GitLab ве покрива.
Ве молиме имајте предвид дека ова е прво издание на агентот. Нашиот моментален фокус за GitLab Kubernetes Agent е конфигурирање и управување со распоредувањата преку код. Некои постоечки функции за интеграција на Kubernetes, како што се табли за распоредување и управувани апликации со GitLab, сè уште не се поддржани. Претпоставувамедека овие способности ќе бидат додадени на агентот во идните изданија, како и нови интеграции фокусирани на безбедноста и усогласеноста.
Претходно, системот за дозволи на GitLab ја отежнуваше правилната поделба на одговорностите во вашиот тим помеѓу оние кои се одговорни за развој и оние кои се одговорни за распоредување. Со објавувањето на GitLab 13.4, можете да дадете дозвола да одобрувате барања за спојување за распоредување, како и да всушност распоредувате код на луѓе кои не го пишуваат кодот, без да им дадете права за пристап на одржувач (во руската локализација на GitLab „одржувач“ ).
Претходно, управувањето со ранливост на ниво на пример беше ограничено и во функционалноста и во флексибилноста. Интерфејсот беше една страница која комбинира детали за ранливости, графикони за метрика и поставки. Нема многу простор да се развијат овие функции или да се користат други безбедносни карактеристики.
Направивме фундаментални промени во начинот на кој управуваме со безбедноста и транспарентноста во GitLab. Инстанцираната безбедносна табла е трансформирана во цел безбедносен центар. Најголемата промена е воведувањето на нова структура на менито: наместо една страница, сега ги гледате одделно безбедносната контролна табла, извештајот за ранливост и поставките. Иако функционалноста не е променета, нејзиното разделување на делови ќе овозможи подобрувања на овој дел што инаку би биле тешки. Ова, исто така, ја поставува основата за додавање други способности поврзани со безбедноста во иднина.
Посебниот дел за Извештај за ранливост сега има повеќе простор за прикажување важни детали. Еве ги пропустите кои моментално се наоѓаат на листата на пропусти на проектот. Преместувањето на графичките контроли со метрика за ранливост во посебен дел создава удобен безбедносен контролен панел. Сега е платно за идни визуелизации - не само за управување со ранливост, туку и за какви било метрики поврзани со безбедноста. Конечно, посебна област за поставки создава заеднички простор за сите безбедносни поставки на ниво на пример, не само за управување со ранливост.
Претходно оваа година, GitLab се обврза поместете 18 карактеристики во отворен код. Во ова издание, ја завршивме миграцијата на функциите што може да се префрлат во Стартерниот план и ќе продолжиме да ги мигрираме во Core од Git Lab 13.5. Возбудени сме што ќе ја донесеме оваа функција на повеќе корисници и сакаме да слушнеме како ја користите.
Понекогаш кога се движите во GitLab сакате да одите директно на одреден проект наместо на страницата со резултати од пребарувањето.
Користејќи ја глобалната лента за пребарување, можете брзо да се движите до најновите билети, групи, проекти, поставки и теми за помош. Можете дури и да користите копче за пристап /да го поместите курсорот до лентата за пребарување за да се движите во GitLab уште поефикасно!
Кога разгледувате барање за спојување, може да биде тешко да се одреди дали променетиот код е покриен со тестови на единицата. Наместо тоа, рецензентите можат да се потпрат на целокупната покриеност и да побараат таа да се зголеми пред да одобрат барање за спојување. Ова може да доведе до случаен пристап кон пишување тестови, што всушност нема да го подобри квалитетот на кодот или покриеноста на тестовите.
Сега, кога гледате разлика во барањето за спојување, ќе видите визуелен приказ на покриеноста на кодот. Новите ознаки ќе ви овозможат брзо да разберете дали променетиот код е покриен со единица тест, што ќе помогне да се забрза прегледот на кодот и времето на спојување и распоредување на новиот код.
Благодарение Фабио Хусер и Сименс за оваа функција!
Од објавувањето на GitLab 12.5 со користење панели за животна средина може да ја следите состојбата на околините, но не повеќе од седум средини во три проекти. Го подобривме овој панел во изданието 13.4 така што го пагинизиравме за да ви помогнеме да ги одржувате и управувате вашите околини во обем. Сега можете да видите повеќе средини во повеќе проекти.
Тестирањето за замаглување на API е одличен начин да се пронајдат грешки и пропусти во вашите веб-апликации и API-и што може да ги пропуштат другите скенери и методи за тестирање.
АПИ fuzzing тестирање во GitLab ви овозможува да обезбедите Спецификација OpenAPI v2 или HAR датотека вашата апликација и потоа автоматски генерира случајни влезни податоци дизајнирани да ги тестираат рабовите и да пронаоѓаат грешки. Резултатите се веднаш видливи во вашиот гасовод.
Ова е нашето прво издание за fuzz тестирање на API и би сакале да слушнеме што мислите. Имаме повеќе на залиха за fuzz тестирање многу идеи, што ќе го базираме на објавувањето на оваа функција.
Претходно, создавањето график во контролната табла за метрика во GitLab не беше лесна задача. Откако ја креиравте метриката во датотеката YAML на контролната табла, направивте промени во master, без да можете да потврдите дека новосоздадениот график работи точно како што ви треба. Почнувајќи со ова издание, можете да ги прегледате промените додека го креирате графикот, добивајќи идеја за резултатот пред да ги испратите промените во датотеката YAML на контролната табла.
Кога управувате со голем број проекти во GitLab, потребен ви е единствен извор на информации за тоа како покривањето на кодот се менува со текот на времето во сите проекти. Претходно, прикажувањето на овие информации бараше мачна и долготрајна рачна работа: мораше да преземете податоци за покривање на кодот од секој проект и да ги комбинирате во табела.
Во изданието 13.4, стана можно лесно и брзо да се состави .csv датотека со сите податоци за покриеност со код за сите проекти на групата или за избор на проекти. Оваа функција е MVC, ќе биде проследена со способност парцела просечна покриеност со текот на времето.
Ова издание воведува поддршка за неколку нови јазици за fuzz тестирање насочено кон целосна покриеност.
Сега можете да ги процените целосните можности за тестирање за заматување во вашите апликации Java, Rust и Swift и да пронајдете грешки и пропусти што може да ги пропуштат другите скенери и методи за тестирање.
Страницата Environments ја прикажува целокупната состојба на вашите околини. Во ова издание ја подобривме оваа страница со додавање на екранот за предупредување. Активираните предупредувања заедно со статусот на вашите опкружувања ќе ви помогнат брзо да преземете акција за да ги поправите ситуациите што се појавуваат.
Со користење на вгнездени цевководи, сега е можно да се водат нови цевководи во детски цевководи. Дополнително ниво на длабочина може да биде корисно ако ви треба флексибилност да генерирате променлив број на цевководи.
Претходно, кога се користеа вгнездени цевководи, секој детски цевковод бараше рачно дефинирана задача за активирање во главниот цевковод. Сега можете да креирате вгнездени цевководи кои динамично ќе стартуваат кој било број на нови вгнездени цевководи. На пример, ако имате едно складиште, можете динамички да го генерирате првиот подцевковод, кој самиот ќе го создаде потребниот број на нови цевководи врз основа на промените во гранката.
Претходно, навигацијата помеѓу матичните и вгнездените цевководи не беше многу погодна - ви требаа многу кликови за да стигнете до саканиот гасовод. Исто така, не беше лесно да се открие која работа го започна гасоводот. Сега ќе биде многу полесно да се видат врските помеѓу матичните и вгнездените цевководи.
Доколку сте користеле матрица на задачи, можеби сте забележале дека беше тешко да се одреди која матрична променлива се користи за одредена работа, бидејќи имињата на работните места изгледаа како matrix 1/4. Во изданието 13.4, ќе ги видите релевантните вредности на променливите што се користеле во таа работа наместо генеричкото име на работата. На пример, ако вашата цел е да ја дебагирате архитектурата x86, тогаш работата ќе биде повикана matrix: debug x86.
Корисниците на GitLab сега ќе можат да ги поврзат своите сметки на GitLab со нивната сметка на Atlassian Cloud. Ова ќе ви овозможи да се најавите во GitLab со вашите Atlassian ингеренции, а исто така ќе ја поставите основата за идни подобрувања на интеграцијата. Гитлаб со Жира и со други производи од линијата Atlassian.
Организациите кои се фокусирани на усогласеноста имаат потреба од начин да им покажат на ревизорите сеопфатен поглед на компонентите поврзани со секоја дадена промена во производството. Во GitLab, ова значи собирање сè на едно место: барања за спојување, билети, цевководи, безбедносни скенирања и други податоци за извршување. Досега требаше или рачно да ги собирате во GitLab или да ги конфигурирате вашите алатки за собирање на информациите, што не беше многу ефикасно.
Сега можете програмски да ги собирате и извезувате овие податоци за да ги исполните барањата за ревизија или да извршите други анализи. За да извезете листа на сите обврски за спојување за тековната група, треба да отидете на Контролни табли за усогласеност и кликнете на копчето Список на сите обврски за спојување. Добиената датотека ќе ги содржи сите заложби на барањето за спојување, нивниот автор, ID на поврзаното барање за спојување, група, проект, потврдувачи и други информации.
Управувањето со пристапот до именскиот простор на GitLab е важен дел од напорите за усогласување. Од принципи на најмала привилегија до оневозможување на временскиот пристап, може да има неколку барања поврзани со токените за личен пристап во GitLab. За да го олесниме одржувањето и управувањето со сите овие кориснички акредитиви во вашиот именски простор, обезбедивме можност да ги наведеме сите токени за личен пристап и опционално забрани пристап преку API.
Овие подобрувања на GitLab API им овозможуваат на корисниците да ги набројуваат и отповикаат сопствените токени за личен пристап, а администраторите да ги наведуваат и отповикаат токените на нивните корисници. Сега ќе им биде полесно на администраторите да видат кој има пристап до нивниот именски простор, да донесуваат одлуки за пристап врз основа на кориснички податоци и да ги отповикаат токените за лични пристап што можеби биле компромитирани или кои не спаѓаат во политиките за управување со пристап на компанијата.
Кога ги прегледувате промените на кодот, дискусиите и обврските за барање за спојување, често е пожелно да се изврши локално плаќање на филијалата за подлабоко преглед. Сепак, наоѓањето на името на нишката станува сè потешко бидејќи се додава повеќе содржина во описот на барањето за спојување и мора да се движите понатаму надолу по страницата.
Го додадовме името на гранката во страничната лента со барање за спојување, што го прави пристапно во секое време и ја елиминира потребата да се движите низ целата страница. Исто како врската до барањето за спојување, делот изворна гранка содржи практично копче „копирање“.
Благодарение Итан Ризор за вашиот огромен придонес во развојот на оваа функција!
Барањата за спојување кои додаваат промени на повеќе датотеки понекогаш ги собираат разликите на големите датотеки за да ги подобрат перформансите на прикажувањето. Кога тоа ќе се случи, можно е случајно да се прескокне датотека за време на прегледот, особено во барањата за спојување со голем број датотеки. Почнувајќи од верзијата 13.4, барањата за спојување ќе ги означуваат разликите што содржат преклопени датотеки, така што нема да ги пропуштите овие датотеки за време на прегледот на кодот. За уште поголема јасност, планираме да додадеме истакнување на овие датотеки во идното издание. Останете во тек за ажурирања на билет за гитлаб број 16047.
Во делот за разлики во барањето за спојување, големите датотеки се собираат за да се подобрат перформансите. Меѓутоа, при прегледување на кодот, некои датотеки може да се пропуштат кога рецензентот се движи низ списокот со датотеки, бидејќи сите големи датотеки се собираат.
Додадовме видливо предупредување на врвот на страницата за разлики во барањето за спојување за да ги информираме корисниците дека има споена датотека во овој дел. На овој начин, нема да пропуштите никакви промени во барањето за спојување за време на прегледот.
Претходно, кога примарниот јазол на кластерот Gitaly отиде офлајн, складиштата на тој јазол беа означени како само за читање. Ова го спречи губењето на податоците во ситуации каде што имало промени на јазолот кои сè уште не биле реплицирани. Кога јазолот се врати онлајн, GitLab не беше автоматски обновен и администраторите мораа рачно да го започнат процесот на синхронизација или да прифатат губење на податоци. Други ситуации, како што е неуспехот на задачата за репликација на секундарен јазол, исто така може да резултира со застоени или складишта само за читање. Во овој случај, складиштето остана застоено додека не се случи следната операција за запишување, што ќе ја започне работата за репликација.
За да се реши овој проблем Praefect сега закажува задача за репликација кога ќе открие застарено складиште на еден јазол и најнова верзија на складиштето на друг. Оваа задача за репликација автоматски го ажурира складиштето, со што се елиминира потребата за рачно обновување на податоците. Автоматското обновување, исто така, осигурува дека секундарните јазли брзо се ажурираат ако работата за репликација не успее, наместо да се чека следната операција за запишување. Бидејќи многу кластери Gilaly складираат голем број складишта, ова значително го намалува времето што администраторите и инженерите за доверливост го поминуваат за враќање на податоците по грешка.
Дополнително, автоматската поправка започнува репликација на складиштата на кој било нов јазол Gitaly додаден во кластерот, со што се елиминира рачната работа при додавање нови јазли.
Ефективната комуникација во GitLab се заснова на списоци со задачи. Ако сте спомнати во коментар, од клучно значење е да можете да скокнете до задачата и или да започнете да правите нешто или да ја означите како завршена. Исто така, важно е да можете да си доделите задача кога треба да работите на нешто или да се вратите подоцна.
Претходно, не можевте да додавате задачи или да ги означите како завршени кога работите со дизајни. Ова сериозно ја наруши ефикасноста на комуникацијата помеѓу тимовите на производи, бидејќи задачите се критичен елемент на работниот тек на GitLab.
Во изданието 13.4, дизајните ги достигнуваат коментарите на билетите при користење на задачите, што ја прави работата со нив поконзистентна и поефикасна.
Го подобривме водичот за решавање проблеми за GitLab CI/CD со повеќе информации за вообичаените проблеми со кои може да наидете. Се надеваме дека подобрената документација ќе биде вреден ресурс за да ви помогне брзо и лесно да започнете и да го стартувате GitLab CI/CD.
Претходно, барањата за спојување можеше случајно да паднат од редот за спојување поради доцните коментари. Ако барањето за спојување веќе било во редот и некој додал коментар на него што создава нова нерешена дискусија, барањето за спојување се сметало за неподобно за спојување и би испаднало од редот. Сега, откако ќе се додаде барање за спојување во редот за спојување, може да се додадат нови коментари без страв дека ќе се наруши процесот на спојување.
Програмерите треба да можат да ја видат вредноста на покриеноста на кодот откако ќе заврши нафтоводот - дури и во сложени сценарија како што е водење на гасовод со повеќе задачи што треба да се анализираат за да се пресмета вредноста на покриеноста. Претходно, виџетот за барање за спојување го прикажуваше само просекот од овие вредности, што значеше дека треба да отидете на страницата за работа и назад до барањето за спојување за да добиете средни вредности на покриеност. За да ви заштедиме време и овие дополнителни чекори, направивме додатокот да ја прикажува просечната вредност на покриеност, неговите промени помеѓу целната и изворната гранка и совет за алатка што ја прикажува вредноста на покриеноста за секоја работа врз основа на која е пресметан просекот.
Регистарот на пакети GitLab е место за складирање и дистрибуција на пакети во различни формати. Кога имате многу пакети во вашиот проект или група, треба брзо да ги идентификувате неискористените пакети и да ги отстраните за да ги спречите луѓето да ги преземаат. Можете да ги отстраните пакетите од вашиот регистар преку АПИ на пакети или преку корисничкиот интерфејс во регистарот на пакети. Сепак, до сега не можевте да отстраните пакети кога гледате група преку интерфејсот. Како резултат на тоа, мораше да ги отстраните непотребните пакети по проект, што беше неефикасно.
Сега можете да ги отстраните пакетите кога го гледате регистарот на пакети на групата. Едноставно одете на страницата за регистар на пакети на групата, филтрирајте ги пакетите по име и отстранете ги сите што не ви требаат.
Можете да го користите складиштето Conan во GitLab за објавување и дистрибуирање на зависности од C/C++. Сепак, претходно пакетите можеа да се скалираат само на ниво на пример, бидејќи името на пакетот Conan можеше да биде само максимум 51 знак. Ако сакате да објавите пакет од подгрупа, на пример gitlab-org/ci-cd/package-stage/feature-testing/conan, беше речиси невозможно да се направи.
Сега можете да ги намалите пакетите Conan на ниво на проект, што го олеснува објавувањето и дистрибуирањето на зависностите на вашите проекти.
Возбудени сме што додаваме скенирања за зависност за C, C++, C# и .Net кодови проекти кои користат NuGet 4.9+ или Conan менаџери на пакети на нашата листа поддржани јазици и рамки. Сега можете да овозможите скенирање на зависности како дел од фазата Безбедна за да проверите за познати пропусти во зависностите додадени преку менаџерите на пакети. Пронајдените пропусти ќе бидат прикажани во вашето барање за спојување заедно со нивното ниво на сериозност, за да знаете пред да го извршите спојувањето какви ризици носи новата зависност. Можете исто така да го конфигурирате вашиот проект да бара потврда за барање за спојување за зависности со ранливости со критични (Критични), високи (Високи) или непознати (Непознати) нивоа на сериозност.
Претходно, при поставување на поставките за барање за спојување Спојте се кога ќе заврши гасоводот (Merge When Pipeline Succeeds, MWPS) не е испратено известување по е-пошта. Мораше рачно да го проверите статусот или да чекате известување за спојување. Со ова издание, ние сме задоволни што ги прикажуваме придонесите на корисниците @ravishankar2kool, што го реши овој проблем со додавање автоматски известувања за сите претплатени на барање за спојување кога рецензентот ја менува поставката за спојување во MWPS.
Не секој проблем што се појавува веднаш предизвикува предупредувања: корисниците пријавуваат прекини, а членовите на тимот ги истражуваат проблемите со перформансите. Инцидентите сега се еден вид билети, така што вашите тимови можат брзо да ги креираат како дел од нивниот вообичаен работен тек. Кликнете Нова задача од каде било во GitLab и на терен Тип изберете Инцидент.
Ги подобривме предупредувањата на GitLab со додавање на нов тип на спомнување специјално за нив во GitLab Markdown, што го олеснува споделувањето и спомнувањето предупредувања. Користете ^alert#1234да се спомене предупредувањето во кое било поле Markdown: во инциденти, билети или барања за спојување. Ова исто така ќе ви помогне да ги идентификувате работните места што се создаваат од предупредувања наместо од билети или барања за спојување.
Описот на предупредувањето содржи информации од суштинско значење за решавање проблеми и обновување, а овие информации треба да бидат лесно достапни за да не морате да менувате алатки или картички додека работите за да решите инцидент. Инцидентите создадени од предупредувања го прикажуваат целосниот опис на предупредувањата во картичката Детали за предупредување.
GitLab, како единствена апликација, има уникатна способност брзо да открие содржина низ целиот ваш работен тек на DevOps. Во GitLab 13.4, напредното пребарување враќа резултати 75% побрзо кога тоа ограничен на одредени имиња и проекти, како на GitLab.com.
Имаше опција да се одложи бришењето на проектот воведен во 12.6. Сепак, претходно не беше можно да се видат сите проекти кои чекаат бришење на едно место. Администраторите на корисничкиот примерок на GitLab сега можат да ги видат сите проекти за бришење што чекаат на едно место, заедно со копчињата за лесно враќање на тие проекти.
Оваа функција им дава на администраторите поголема контрола над бришењето на проектот со собирање на сите релевантни информации на едно место и овозможување можност за поништување на несаканите дејства за бришење.
Претходно, правилата за групно туркање можеа да се конфигурираат само со посета на секоја група поединечно преку интерфејсот на GitLab и примена на тие правила. Сега можете да управувате со овие правила преку API за поддршка на вашите сопствени алатки и автоматизација на GitLab.
Складирање акредитиви Им дава на администраторите информации што им се потребни за управување со кориснички акредитиви за нивниот примерок GitLab. Бидејќи организациите фокусирани на усогласеност се разликуваат по строгоста на нивните политики за управување со акредитиви, додадовме копче што им овозможува на администраторите опционално да го отповикаат токенот за личен пристап (PAT) на корисникот. Администраторите сега можат лесно да ги отповикаат потенцијално компромитираните PAT. Оваа функција е корисна за организации кои сакаат пофлексибилни опции за усогласување за да го минимизираат нарушувањето на нивните корисници.
Во GitLab 13.4, воведуваме нов начин за приспособување на уредувачот на статична страница. Иако конфигурациската датотека не зачувува или прима никакви поставки во ова издание, ние ја поставуваме основата за идно прилагодување на однесувањето на уредникот. Во идните изданија ќе додадеме во датотеката .gitlab/static-site-editor.yml параметри за инсталација адреса на основната локација, на кој сликите вчитани во уредникот се зачувуваат, отфрлајќи ги поставките за синтакса на Markdown и другите поставки на уредникот.
Предната материја е флексибилен и удобен начин за дефинирање на променливите на страниците во датотеките со податоци за обработка од страна на генератор на статична локација. Обично се користи за поставување на насловот на страницата, шаблонот за распоред или авторот, но може да се користи за пренесување на секаков вид метаподатоци на генераторот при прикажување на страницата во HTML. Вклучен на самиот врв на секоја датотека со податоци, воведниот дел обично е форматиран како YAML или JSON и бара конзистентна и прецизна синтакса. Корисниците кои не се запознаени со специфичните синтаксички правила може ненамерно да внесат неважечка ознака, што пак може да предизвика проблеми со форматирањето или дури и неуспеси во изградбата.
Режимот за уредување WYSIWYG на уредувачот на статична страница веќе го отстранува воведот од уредникот за да ги спречи овие грешки во форматирањето. Сепак, ова ве спречува да ги менувате вредностите зачувани во овој дел без да се вратите на уредување во изворниот режим. Во GitLab 13.4, можете да пристапите до кое било поле и да ја уредувате неговата вредност во познат интерфејс базиран на форми. Кога ќе се притисне копчето Подесувања (Подесувања) ќе се отвори панел кој прикажува поле за форма за секој клуч дефиниран на почетокот. Полињата се пополнети со тековната вредност, а уредувањето на кое било од нив е едноставно како и внесувањето во веб-формата. Уредувањето на воведот на овој начин ја избегнува сложената синтакса и ви дава целосна контрола врз содржината, додека се осигурува дека конечниот резултат е конзистентно форматиран.
За корисниците на Jira на GitLab: Апликација GitLab за Jira и DVCS конектор ви дозволува да прикажувате информации за обврските на GitLab и барањата за спојување директно во Jira. Во комбинација со нашата вградена интеграција Jira, можете лесно да се движите помеѓу двете апликации додека работите.
Овие функции претходно беа достапни само во нашиот Premium план, но сега се достапни за сите корисници!
Кластерот Gitaly ви овозможува да реплицирате складишта на Git на повеќе „топли“ Gitaly јазли. Ова ја зголемува толеранцијата на грешки со елиминирање на поединечни точки на дефект. Трансакциско работење, воведен во GitLab 13.3, предизвикуваат промените да се емитуваат на сите Gitaly јазли во кластерот, но само Gitaly јазлите кои гласаат во согласност со примарниот јазол ги зачувуваат промените на дискот. Ако сите реплика јазли не се согласуваат, само една копија од промената ќе биде зачувана на дискот, создавајќи единствена точка на неуспех додека не заврши асинхроната репликација.
Гласањето со мнозинство ја подобрува толеранцијата на грешки со тоа што бара согласност од мнозинството јазли (не сите) пред да се зачуваат промените на дискот. Ако оваа функција за менување е овозможена, пишувањето треба да успее на повеќе јазли. Различните јазли автоматски се синхронизираат користејќи асинхрона репликација од оние јазли кои формирале кворум.
Проектите каде што луѓето пишуваат конфигурации во JSON или YAML често се склони кон проблеми бидејќи е лесно да се направи печатна грешка и да се скрши нешто. Можно е да се напишат алатки за проверка за да се откријат овие проблеми во CI цевката, но користењето на датотека со шема JSON може да биде корисно за обезбедување документација и совети.
Учесниците во проектот можат во своето складиште да ја дефинираат патеката до приспособена шема во датотека .gitlab/.gitlab-webide.yml, кој ја одредува шемата и патеката до датотеките што треба да се проверат. Кога вчитувате одредена датотека во Web IDE, ќе видите дополнителни повратни информации и валидација кои ќе ви помогнат да ја креирате датотеката.
Ако користите транспортери со насочен ацикличен график (Директен ацикличен график (DAG)), може да откриете дека има ограничување од 10 работни места што може да ги специфицира работата во needs:, премногу суров. Во 13.4, стандардната граница беше зголемена од 10 на 50 за да се овозможи посложени мрежи на односи меѓу работните места во вашите нафтоводи.
Ако сте администратор на приспособена инстанца на GitLab, можете да го подигнете ова ограничување уште повисоко со поставување на функција за префрлање, иако ние не нудиме официјална поддршка за ова.
Во некои случаи, пропуштената работа во гасоводот може погрешно да се смета за успешна за зависностите наведени во needs, што предизвика да се појават следните работни места, што не требаше да се случи. Ова однесување е поправено во верзијата 13.4 и needs сега правилно се справува со случаи на пропуштени задачи.
GitLab сега автоматски ја заклучува последната успешна работа и артефакт на гасоводот на која било активна гранка, барање за спојување или ознака за да спречи бришење по истекот. Станува полесно да се постават поагресивни правила за истекување за да се исчистат старите артефакти. Ова помага да се намали потрошувачката на простор на дискот и гарантира дека секогаш имате копија од најновиот артефакт од гасоводот.
Оптимизирањето на вашиот CI/CD гасовод може да ја подобри брзината на испорака и да заштеди пари. Ја подобривме нашата документација за да вклучи брз водич за извлекување максимум од оптимизирање на вашите цевководи.
Извештај за тест на единицата е лесен начин да се видат резултатите од сите тестови во гасоводот. Меѓутоа, со голем број тестови, наоѓањето неуспешни тестови може да потрае долго време. Други проблеми што може да го отежнат користењето на извештајот вклучуваат потешкотии при лизгање низ излезите за долги траги и заокружување на времето на нула за тестови што се извршуваат за помалку од 1 секунда. Сега, стандардно, при сортирање извештај за тестирање, прво ги поставува неуспешните тестови на почетокот на извештајот, а потоа ги подредува тестовите по времетраење. Ова го олеснува наоѓањето неуспеси и долгите тестови. Дополнително, времетраењето на тестот сега се прикажува во милисекунди или секунди, што ги прави многу побрзи за читање, а решени се и претходните проблеми со лизгањето.
Сега има ограничувања за големината на датотеките со пакети што може да се прикачат во регистарот на пакети GitLab. Додадени се ограничувања за да се оптимизираат перформансите на регистарот на пакети и да се спречи злоупотреба. Ограничувањата варираат во зависност од форматот на пакетот. За GitLab.com, максималните големини на датотеки се:
Конан: 250 MB
Maven: 3GB
НПМ: 300 MB
NuGet: 250 MB
PyPI: 3 GB
За прилагодените GitLab примери, стандардните поставки се исти. Сепак, администраторот може да ги ажурира ограничувањата користејќи Конзоли за шини.
Можете да го користите складиштето GitLab PyPI за да креирате, објавувате и споделувате пакети на Python заедно со изворниот код и цевководи CI/CD. Сепак, претходно не можевте да се автентицирате во складиштето користејќи претходно дефинирана променлива на околината CI_JOB_TOKEN. Како резултат на тоа, моравте да ги користите вашите лични ингеренции за да го ажурирате складиштето PyPI, или можеби сте одлучиле воопшто да не го користите складиштето.
Сега е полесно да се користи GitLab CI/CD за објавување и инсталирање на PyPI пакети користејќи претходно дефинирана променлива на околината CI_JOB_TOKEN.
До скенирањето DAST на барање што беше воведен во претходното издание, Додадени се профили на скенер DAST. Тие ги прошируваат конфигурациските можности на овие скенирања, овозможувајќи ви брзо да креирате повеќе профили за да покриете повеќе типови скенирање. Во 13.4, профилот на роботот природно вклучува поставка за истек на рокот за индексирање што одредува колку долго треба да работи пребарувачот DAST додека се обидува да ги открие сите страници на пребаруваната локација. Профилот, исто така, вклучува поставка за истекот на целната локација за да поставите колку долго пребарувачот треба да чека за локацијата да стане достапна пред да го прекине индексирањето ако страницата не одговори со статусен код 200 или 300. Како што продолжуваме да се подобруваме, оваа функција ќе биде додаден на профилот на скенерот во идните изданија; ќе се додадат дополнителни параметри за конфигурација.
Ако користите страници на GitLab и сакате подобро да управувате со промените на URL-то, можеби сте забележале дека управувањето со пренасочувања на вашата страница на GitLab страници не е можно. GitLab сега ви дозволува да конфигурирате правила за пренасочување на една URL адреса на друга за вашата страница на Страници со додавање на конфигурациска датотека во складиштето. Оваа функција е овозможена благодарение на придонесот на Кевин Барнет (@PopeDrFreud), нашиот Ерик Иствуд (@MadLittleMods) и тимовите на GitLab. Ви благодариме на сите за вашиот придонес.
Пристапот до претходните верзии на државата Terraform е неопходен и за усогласеност и за дебагирање доколку е потребно. Поддршката за верзијата на состојбата на Terraform управувана од GitLab е обезбедена почнувајќи од GitLab 13.4. Верзијата е автоматски овозможена за новите датотеки со состојба на Terraform. Постојните датотеки на Terraform ќе бидат автоматски мигрираше во верзии на складиште во подоцнежно издание.
Кога обработувате инциденти, треба лесно да одредите колку долго предупредувањето било отворено и колку пати настанот бил активиран. Овие детали се често критични во одредувањето на влијанието врз клиентот и она што вашиот тим треба прво да го реши. Во новиот панел за детали за инцидентот, го прикажуваме времето на започнување на предупредувањето, бројот на настани и врската до оригиналното предупредување. Оваа информација е достапна за инциденти кои се генерирани од предупредувања.
Димензијата Сериозност на инцидентот им овозможува на одговорните лица и засегнатите страни да го утврдат влијанието на прекинот, како и методот и итноста на одговорот. Бидејќи вашиот тим ги споделува резултатите за време на разрешување и обновување на инцидентот, тој може да ја промени оваа поставка. Сега можете да ја уредите сериозноста на инцидентот во десната странична лента на страницата Детали за инцидентот, а сериозноста се прикажува во списокот со инциденти.
Ова подобрување на Уредувачот на правила за безбедност на мрежата на контејнер им овозможува на корисниците лесно да креираат, уредуваат и бришат нивните правила директно од корисничкиот интерфејс на GitLab. Карактеристиките на уредникот вклучуваат .yaml за искусни корисници и уредник на правила со интуитивен интерфејс за оние кои се нови во мрежните правила. Можете да најдете нови опции за управување со правила во делот Безбедност и усогласеност > Управување со закани > Правила (Безбедност и усогласеност > Управување со закани > Политики).
И GitLab и GitLab Runner сега поддржуваат Складирање на азурни дамки, што го олеснува извршувањето на услугите на GitLab на Azure.
Инстанците на GitLab поддржуваат Azure за сите видови складишта на објекти, вклучувајќи ги и датотеките LFS, артефактите CI и резервни копии. За да поставите складирање на Azure Blob, следете ги упатствата за инсталација Омнибус или Табела на кормила.
Процесорите за работни места на GitLab исто така поддржуваат Azure за складирање дистрибуиран кеш. Складирањето Azure може да се конфигурира со користење на делот [runners.cache.azure].
Како одговор на зголемената побарувачка за поддршка за водење на GitLab на 64-битна ARM архитектура, со задоволство ја објавуваме достапноста на официјалниот пакет ARM64 Ubuntu 20.04 Omnibus. Огромна благодарност до Zitai Chen и Guillaume Gardet за огромниот придонес што го направија - нивните барања за спојување одиграа клучна улога во ова!
За да го преземете и инсталирате пакетот за Ubuntu 20.04, одете на нашата страница за инсталација и изберете Ubuntu.
Паметните картички, како што се Common Access Cards (CAC), сега може да се користат за автентикација на пример на GitLab, распореден преку Helm шема. Паметните картички се автентицирани со локална база на податоци користејќи X.509 сертификати. Со ова, поддршката за паметни картички со Helm chart сега е во согласност со поддршката за паметни картички достапна во распоредувањата на Omnibus.