Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў

Хуткае выяўленне ўцечкі сакрэтаў

Здавалася б, невялікая памылка - выпадкова перадаць уліковыя дадзеныя ў агульны рэпазітар. Аднак наступствы могуць быць сур'ёзныя. Як толькі зламыснік атрымае ваш пароль або API-ключ, ён захопіць ваш уліковы запіс, заблакуе вас і падманным шляхам выкарыстоўвае грошы. Акрамя таго, магчымы эфект даміно: доступ да аднаго ўліковага запісу адчыняе доступ да іншых. Стаўкі высокія, таму надзвычай важна даведвацца аб уцечцы сакрэтаў як мага хутчэй.

У гэтым рэлізе мы прадстаўляем опцыю выяўлення сакрэтаў у рамках нашага функцыяналу SAST. Кожны коміт скануецца ў заданні CI/CD на наяўнасць сакрэтаў. Ёсць сакрэт — і распрацоўшчык атрымлівае папярэджанне ў мердж-рэквест. Ён на месцы анулюе якія ўцяклі ўліковыя дадзеныя і стварае новыя.

Забеспячэнне правільнага кіравання зменамі

Па меры росту і ўскладненні падтрымліваць узгодненасць паміж рознымі часткамі арганізацыі ўсё больш складана. Чым больш карыстальнікаў прыкладання і чым вышэй даход, тым больш сур'ёзныя наступствы мерджа няправільнага або небяспечнага кода. Для многіх арганізацый забеспячэнне правільнага працэсу праверкі перад мерджам кода - жорсткае патрабаванне, паколькі рызыкі вельмі высокія.

У GitLab 11.9 больш кантролю і больш эфектыўная структура - дзякуючы правілам дазволу мердж-рэквестаў. Раней, каб атрымаць дазвол, дастаткова было ўказаць асобную асобу або групу (кожны член якой можа даць дазвол). Зараз можна дадаць некалькі правіл, каб мердж-рэквест патрабаваў дазволы ад пэўных асоб ці нават ад некалькіх чальцоў пэўнай групы. Акрамя таго, у правілы дазволу інтэграваная фіча Code Owners, якая дазваляе лёгка вызначыць асобу, якая выдала дазвол.

Гэта дазваляе арганізацыям рэалізаваць складаныя працэсы дазволу, захоўваючы пры гэтым прастату адзінага прыкладання GitLab, дзе задачы, код, пайплайны і дадзеныя маніторынгу бачныя і даступныя для прыняцця рашэнняў і паскарэнні працэсу дазволу.

ChatOps зараз мае адкрыты зыходны код

GitLab ChatOps - гэта эфектыўная прылада аўтаматызацыі, які дазваляе выконваць любы джоб CI/CD і запытваць яго статут непасрэдна ў такіх чат-прыкладаннях, як Slack і Mattermost. Першапачаткова уведзены ў GitLab 10.6, ChatOps быў часткай падпіскі GitLab Ultimate. Зыходзячы з стратэгіі развіцця прадукта и прыхільнасці адкрытаму зыходнаму коду, мы часам перамяшчаем фічы ўніз па ўзроўні і ніколі - уверх.

У выпадку з ChatOps мы зразумелі, што гэты функцыянал можа быць карысны ўсім, і што ўдзел супольнасці можа прынесці карысць самай фічы.

У GitLab 11.9/XNUMX мы адкрылі зыходны код ChatOps, і такім чынам, зараз ён бясплатна даступны для выкарыстання ў самакіравальнай GitLab Core і на GitLab.com і адкрыты для супольнасці.

І многае іншае!

У гэтым рэлізе даступна так шмат выдатных фіч: напрыклад, Аўдыт параметраў функцый, Устараненне ўразлівасцяў мердж-рэквестаў и Шаблоны CI/CD для security jobs, - Што нам не церпіцца пра іх распавесці!

Найбольш каштоўным супрацоўнікам (MVP) гэтага месяца прызнаны Марсэль Аміра (Marcel Amirault)
Марсэль увесь час дапамагаў нам паляпшаць дакументацыю GitLab. Ён многае зрабіў для павышэння якасці і зручнасці выкарыстання нашых дакументаў. Дома арыгата [вялікі дзякуй (яп.) - заўв. зав.] Марсэль, мы шчыра цэнім гэта!

Асноўныя функцыі, дададзеныя ў рэліз GitLab 11.9

Выяўленне сакрэтаў і уліковых дадзеных у рэпазітары

(ULTIMATE, GOLD)

Распрацоўнікі сітавінай ненаўмысна перадаюць у выдаленыя рэпазітары сакрэты і ўліковыя дадзеныя. Калі іншыя людзі маюць доступ да гэтай крыніцы, або калі праект - адкрыты, то канфідэнцыйная інфармацыя раскрываецца і можа быць выкарыстана зламыснікамі для доступу да такіх рэсурсаў, як асяроддзя разгортвання.

GitLab 11.9 ёсць новы тэст - "Secret Detection". Ён скануе змесціва рэпазітара ў пошуку API-ключоў і іншай інфармацыі, якая не павінна тут знаходзіцца. GitLab адлюстроўвае вынікі ў справаздачы SAST ў віджэце мэрдж-рэквеста, справаздачах пайплайнаў і на панэлях бяспекі.

Калі вы ўжо падключылі SAST для свайго прыкладання, то нічога рабіць не трэба, проста карыстайцеся перавагамі гэтай новай фічы. Яна таксама ўключана ў канфігурацыю Auto DevOps па змаўчанні.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Правілы дазволу мердж-рэквестаў

(PREMIUM, ULTIMATE, SILVER, GOLD)

Рэцэнзаванне кода - неад'емны элемент кожнага паспяховага праекта, але не заўсёды зразумела, хто павінен займацца рэцэнзаваннем змен. Часцяком пажаданы ўдзел рэцэнзентаў з розных каманд: каманды распрацоўшчыкаў, каманды па ўзаемадзеянні з карыстальнікамі, вытворчай каманды.

Правілы дазволу дазваляюць удасканаліць працэс узаемадзеяння паміж асобамі, якія ўдзельнічаюць у рэцэнзаванні кода: вызначаецца кола ўпаўнаважаных зацвярджаючых асоб і мінімальная колькасць дазволаў. Правілы дазволу адлюстроўваюцца ў віджэце мердж-рэквеста, і такім чынам, можна хутка прызначыць наступнага рэцэнзента.

У GitLab 11.8/11.9 правілы дазволу былі па змаўчанні адключаныя. Пачынальна з версіі GitLab 11.3 яны па змаўчанні даступныя. У GitLab XNUMX/XNUMX мы ўвялі опцыю Code Owners для абазначэння членаў каманды, якія адказваюць за асобныя коды ў рамках праекта. Функцыя Code Owners інтэграваная ў правілы дазволу, і такім чынам, заўсёды можна хутка знайсці патрэбных людзей, каб рэцэнзаваць змены.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Перамяшчэнне ChatOps у Core

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Першапачаткова уведзены ў GitLab Ultimate 10.6/XNUMX, ChatOps пераехаў у GitLab Core. GitLab ChatOps прапануе магчымасць запуску заданняў GitLab CI праз Slack з дапамогай фічы слэш-каманд.

Мы адкрываем зыходны код гэтай фічы ў адпаведнасці з нашым прынцыпам вызначэння ўзроўню, арыентаваным на пакупніка. Часцей за карыстаючыся ёю, супольнасць зробіць большы ўнёсак.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Аўдыт параметраў функцый

(PREMIUM, ULTIMATE, SILVER, GOLD)

Такія аперацыі, як даданне, выдаленне ці змена параметраў функцый, зараз рэгіструюцца ў логу аўдыту GitLab, дзякуючы чаму вы можаце бачыць, што і калі было зменена. Адбылася аварыя і трэба паглядзець, што змянілася за апошні час? Ці проста трэба ў рамках аўдыту праверыць, як былі змененыя параметры функцый? Цяпер гэта зрабіць вельмі лёгка.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Устараненне ўразлівасцяў мердж-рэквестаў

(ULTIMATE, GOLD)

Каб хутка ўхіляць уразлівасці кода, працэс павінен быць простым. Важна спрасціць выпраўленні бяспекі, дазваляючы распрацоўнікам засяродзіцца на прамых абавязках. У GitLab 11.7/XNUMX мы прапанавалі файл выпраўлення, Але яго трэба было загрузіць, прымяніць на лакальным узроўні і затым перамясціць змены ў выдалены рэпазітар.

У GitLab 11.9/XNUMX гэты працэс аўтаматызаваны. Ухіляйце ўразлівасці, не выходзячы з вэб-інтэрфейсу GitLab. Мердж-рэквест ствараецца непасрэдна з акна інфармацыі аб уразлівасцях, і гэтая новая галінка ўжо будзе змяшчаць выпраўленне. Праверыўшы, ці вырашана праблема, дадайце выпраўленне ў зыходную галінку, калі пайплайн у парадку.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Адлюстраванне вынікаў сканавання кантэйнераў на панэлі бяспекі групы

(ULTIMATE, GOLD)

Панэль бяспекі групы дазваляе адмыслоўцам сканцэнтравацца на найболей важных для працы пытаннях, забяспечваючы выразны і падрабязны агляд усіх магчымых уразлівасцяў, здольных паўплываць на прыкладанні. Вось чаму важна, каб панэль утрымоўвала ўсю неабходную інфармацыю ў адным месцы і дазваляла карыстачам падрабязна вывучыць дадзеныя перад тым, як ухіляць уразлівасці.

У GitLab 11.9/XNUMX вынікі сканавання кантэйнера дададзены на панэль інструментаў, у дадатак да ўжо наяўных SAST і вынікаў сканавання залежнасцяў. Цяпер увесь агляд – у адным месцы, незалежна ад крыніцы праблемы.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Шаблоны CI/CD для security jobs

(ULTIMATE, GOLD)

Функцыі бяспекі GitLab развіваюцца вельмі хутка і ўвесь час патрабуюць абнаўленняў, каб падтрымліваць эфектыўнасць і абарону кода. Змяняць вызначэнне джоба - складана, калі кіруеш некалькімі праектамі. І яшчэ мы разумеем: рызыкаваць, выкарыстоўваючы апошнюю версію GitLab без упэўненасці ў яе поўнай сумяшчальнасці з бягучым асобнікам GitLab, ніхто не жадае.

Менавіта па гэтай прычыне мы прадставілі ў GitLab 11.7/XNUMX новы механізм вызначэння джобаў з дапамогай шаблонаў.

Пачынальна з GitLab 11.9 мы будзем прапаноўваць убудаваныя шаблоны для ўсіх security jobs: напрыклад, sast и dependency_scanning, - Сумяшчальныя з адпаведнай версіяй GitLab.

Уключайце іх непасрэдна ў сваю канфігурацыю, і яны будуць абнаўляцца разам з сістэмай пры кожным абнаўленні да новай версіі GitLab. Канфігурацыі пайплайна пры гэтым не мяняюцца.

Новы спосаб вызначэння security jobs - афіцыйны і не падтрымлівае любыя іншыя папярэднія вызначэння джобаў або фрагменты кода. Варта як мага хутчэй абнавіць вызначэнне, каб выкарыстоўваць новае ключавое слова template. Падтрымка любога іншага сінтаксісу можа быць выдаленая ў GitLab 12.0 ці ў іншых будучых рэлізах.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Іншыя паляпшэнні ў GitLab 11.9

Адказ на каментар

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

У GitLab ёсць дыскусіі па тэмах. Да гэтага часу карыстальнік, які піша першапачатковы каментар, павінен быў з самага пачатку вырашыць, ці трэба яму абмеркаванне.

Мы аслабілі гэтае абмежаванне. Бярыце любы каментар у GitLab (па задачах, мердж-рэквестам і эпікам) і адказвайце на яго, пачынаючы тым самым дыскусію. Так каманды ўзаемадзейнічаюць больш арганізавана.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Шаблоны праектаў для. NET, Go, iOS і Pages

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Каб спрасціць карыстальнікам стварэнне новых праектаў, мы прапануем некалькі новых шаблонаў праектаў:

Дакументацыя
Эпік

Патрабуйце дазволы мэрдж-рэквестаў ад Code Owners

(PREMIUM, ULTIMATE, SILVER, GOLD)

Не заўсёды відавочна, хто сцвярджае мердж-рэквест.

Зараз GitLab падтрымлівае патрабаванне зацвердзіць мердж-рэквест, у залежнасці ад таго, якія файлы запыт змяняе, з дапамогай Code Owners. Code Owners прызначаюцца з дапамогай файла пад назовам CODEOWNERS, фармат падобны на gitattributes.

Падтрымка аўтаматычнага прызначэння Code Owners як асоб, адказных за зацвярджэнне мердж-рэквеста, дададзена яшчэ ў Лабараторыя Git 11.5.

Дакументацыя
Задача

Перамяшчэнне файлаў у Web IDE

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Зараз, пераназваўшы файл або каталог, яго можна перамяшчаць з Web IDE у рэпазітар па новым шляху.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Пазнакі ў алфавітным парадку

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Пазнакі GitLab неверагодна ўніверсальныя, і каманды ўвесь час знаходзяць ім новае ўжыванне. Адпаведна, карыстачы часта дадаюць шмат метак да задачы, мердж-рэквесту ці эпіку.

У GitLab 11.9 мы крыху спрасцілі выкарыстанне метак. У задачах, мердж-рэквестах і эпіках пазнакі, якія адлюстроўваюцца на бакавой панэлі, размяшчаюцца ў алфавітным парадку. Гэта датычыцца і прагляду спісу гэтых аб'ектаў.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Хуткія каментары пры фільтрацыі дзеянняў па задачы

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Нядаўна мы ўвялі фічу, з дапамогай якой карыстачы фільтруюць стужку дзеянняў па задачах, мердж-рэквестам ці эпікам, што дазваляе сканцэнтравацца толькі на каментарах ці сістэмных нататках. Гэты параметр захоўваецца для кожнага карыстача ў сістэме, і бывае так, што карыстач можа не разумець, што, праглядаючы задачу праз некалькі дзён, ён бачыць адфільтраваную стужку. Яму здаецца, што пакінуць каментар нельга.

Мы ўдасканалілі дадзенае ўзаемадзеянне. Зараз карыстачы могуць хутка пераключыцца ў рэжым, які дазваляе пакідаць каментары, не пракручваючы стужку зваротна да самага верха. Гэта датычыцца задач, мердж-рэквестаў і эпікі.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Змяненне парадку даччыных эпікаў

(ULTIMATE, GOLD)

Нядаўна мы выпусцілі даччыныя эпікі, якія дазваляюць выкарыстоўваць эпікі эпікаў (у дадатак да даччыных задач эпікаў).

Цяпер можна змяняць парадак даччыных эпікаў эпікаў простым перацягваннем, як і ў выпадку з даччынымі задачамі. Каманды могуць выкарыстоўваць парадак для адлюстравання прыярытэту або вызначэння парадку выканання работ.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Карыстальніцкія сістэмныя паведамленні верхняга і ніжняга калантытула ў Інтэрнэце і электроннай пошце

(CORE, STARTER, PREMIUM, ULTIMATE)

Раней мы дадалі фічу, якая дазваляе карыстальніцкім паведамленням верхняга і ніжняга калантытула з'яўляцца на кожнай старонцы ў GitLab. Сустрэлі яе цеплыня, і каманды выкарыстаюць яе для абмену важнай інфармацыяй: напрыклад, сістэмнымі паведамленнямі, якія адносяцца да іх асобніка GitLab.

Мы з радасцю ўводзім гэтую фічу ў Core, так што зараз ёй можа карыстацца яшчэ больш людзей. Акрамя таго, мы дазваляем карыстальнікам па жаданні адлюстроўваць адны і тыя ж паведамленні ва ўсіх электронных лістах, якія адпраўляюцца праз GitLab, для ўзгодненасці з іншай кропкай узаемадзеяння карыстальніка з GitLab.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Фільтр па канфідэнцыйных задачах

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Канфідэнцыйныя задачы - гэта карысны інструмент для каманд, дазваляе ў рамках адкрытага праекта весці закрытыя абмеркавання па далікатных тэмах. У прыватнасці, яны ідэальна падыходзяць для працы над уразлівасцямі бяспекі. Да гэтага часу кіраваць канфідэнцыйнымі задачамі было не занадта лёгка.

У GitLab 11.9 спіс задач GitLab зараз фільтруецца па канфідэнцыйных ці неканфідэнцыйных задачах. Гэта датычыцца і пошуку задач па API.

Дзякуем за ўклад Роберта Шылінга (Robert Schilling)!

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Рэдагаванне дамена Knative пасля разгортвання

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Указанне карыстацкага дамена пры ўсталёўцы Knative дазваляе абслугоўваць розныя serverless прыкладанні/функцыі з унікальнай канчатковай кропкі.

Зараз інтэграцыя Kubernetes у GitLab дазваляе змяніць/абнавіць карыстацкі дамен пасля дэплою Knative у кластар Kubernetes.

Дакументацыя
Задача

Праверка фармату сертыфіката Kubernetes CA

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Пры даданні існуючага кластара Kubernetes GitLab зараз правярае, што ўведзены сертыфікат CA мае дапушчальны фармат PEM. Гэта пазбаўляе ад магчымых памылак з інтэграцыяй Kubernetes.

Дакументацыя
Задача

Пашырэнне ўтыліты параўнання мердж-рэквеста да ўсяго файла

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Праглядаючы змены ў мердж-рэквесце, зараз можна пашырыць утыліту параўнання для кожнага файла, каб паказаць увесь файл для большага кантэксту, і пакінуць каментары ў нязмененых радках.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Выкананне канкрэтных джобаў па мердж-рэквестах толькі пры змене пэўных файлаў

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

У GitLab 11.6/XNUMX дадалі магчымасць вызначэння only: merge_requests для джобаў па пайплайнах, каб карыстачы маглі выконваць пэўныя заданні толькі пры стварэнні мердж-рэквеста.

Цяпер мы пашыраем гэты функцыянал: дадалася логіка злучэння only: changes, і карыстальнікі могуць выконваць канкрэтныя джобы толькі для мердж-рэквестаў і толькі пры змене пэўных файлаў.

Дзякуй за ўклад Хіроюкі Сато (Hiroyuki Sato)!

Дакументацыя
Задача

Аўтаматычны маніторынг GitLab з Grafana

(CORE, STARTER, PREMIUM, ULTIMATE)

Grafana зараз уваходзіць у наш пакет Omnibus, што спрашчае разуменне функцыянавання вашага асобніка.

Наладзьце grafana['enable'] = true в gitlab.rb, і Grafana будзе даступная па адрасе: https://your.gitlab.instance/-/grafana. У найбліжэйшай будучыні мы таксама увядзем панэль інструментаў GitLab «Са скрынкі».

Дакументацыя
Задача

Прагляд першасных эпікаў на бакавой панэлі эпікаў

(ULTIMATE, GOLD)

Нядаўна мы прадставілі даччыныя эпікі, якія дазваляюць выкарыстоўваць эпікі эпікаў.

У GitLab 11.9/XNUMX мы спрасцілі механізм прагляду гэтай узаемасувязі. Цяпер бачны не толькі матчыны эпік зададзенага эпіка, але ўсё дрэва эпікі на бакавой панэлі справа. Відаць, зачыненыя гэтыя эпікі ці не, і можна нават непасрэдна перайсці да іх.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Спасылка на новую задачу з перамешчанай і закрытай задачы

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

У GitLab можна лёгка перамясціць задачу ў іншы праект з дапамогай бакавой панэлі ці хуткага дзеяння. За кадрам існуючая задача зачыняецца, і ў мэтавым праекце ствараецца новая задача са ўсімі скапіяванымі дадзенымі, уключаючы сістэмныя нататкі і атрыбуты бакавой панэлі. Гэта выдатная фіча.

Улічваючы, што маецца сістэмная нататка аб перамяшчэнні, карыстачы, калі праглядаюць зачыненую задачу, адчуваюць здзіўленне: не могуць не зразумець, што задача зачыненая па чынніку перасоўвання.

У гэтым рэлізе мы прама на значку ў верхняй частцы старонкі зачыненай задачы паказваем, што яна перамешчаная, а таксама ўключаем убудаваную спасылку на новую задачу, каб любы, хто патрапіў на старую, мог хутка перайсці да новай.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Інтэграцыя YouTrack

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

GitLab інтэгруецца са шматлікімі вонкавымі сістэмамі адсочвання задач, што палягчае камандам выкарыстанне GitLab для іншых функцый, захоўваючы пры гэтым абраная імі прылада кіравання задачамі.

У гэтым рэлізе мы дадалі магчымасць інтэграцыі YouTrack ад JetBrains.
Дзякуем за ўклад Котау Яухена (Kotau Yauhen)!

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Змяненне памеру дрэва файлаў мердж-рэквеста

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Пры праглядзе змен мердж-рэквеста зараз можна змяняць памер дрэва файлаў, каб адлюстроўваць доўгія імёны файлаў ці эканоміць месца на невялікіх экранах.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Пераход да апошніх панэляў задач

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

Панэлі задач вельмі зручныя, і каманды ствараюць па некалькі панэляў для кожнага праекту і групы. Нядаўна мы дадалі панэль пошуку, каб хутка фільтраваць усе цікавыя для вас панэлі.

У GitLab 11.9 мы таксама прадставілі раздзел нядаўні у выпадаючым спісе. Такім чынам, можна хутка перайсці да панэляў, з якімі вы нядаўна ўзаемадзейнічалі.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Магчымасць стварэння распрацоўшчыкамі абароненых галін

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Абароненыя галіны не даюць перамяшчаць або мерджить нерэцэнзаваны код. Аднак, калі нікому не дазволена перамяшчаць абароненыя галіны, то ніхто не можа стварыць новую абароненую галіну: напрыклад, галіна рэлізу.

У GitLab 11.9/XNUMX распрацоўнікі могуць ствараць абароненыя галіны з ужо абароненых галін праз GitLab або API. Выкарыстанне Git для перасоўвання новай абароненай галіны ўсё яшчэ абмежавана - каб выпадкова не ствараць новыя абароненыя галіны.

Дакументацыя
Задача

Дэдуплікацыя аб'ектаў Git для адкрытых разгалінаванняў (Beta)

(CORE, STARTER, PREMIUM, ULTIMATE)

Разгалінаванне дазваляе любой асобе ўдзельнічаць у праектах з адкрытым зыходным кодам: без дазволу на запіс, проста капіруючы рэпазітар у новы праект. Захоўванне поўных копій часта разгалінаваных рэпазітароў Git неэфектыўна. Цяпер з дапамогай Git alternatives разгалінавання сумесна выкарыстоўваюць агульныя аб'екты з вышэйстаячага праекта ў пуле аб'ектаў, каб знізіць патрабаванні да дыскавага сховішча.

Пулы аб'ектаў для разгалінаванняў ствараюцца толькі для адчыненых праектаў, калі падлучана хэшаванае сховішча. Пулы аб'ектаў уключаюцца з дапамогай параметра функцыі object_pools.

Дакументацыя
Эпік

Фільтраванне спісу мердж-рэквестаў па прызначаным асобам, якія зацвярджаюць

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

Рэцэнзаванне кода - звычайная для любога паспяховага праекта практыка, але рэцэнзенту бывае складана адсочваць мердж-рэквесты.

У GitLab 11.9 спіс мердж-рэквестаў фільтруецца па прызначанай сцвярджальнай асобе. Такім чынам, вы можаце знайсці мердж-рэквесты, дададзеныя вам як рэцэнзенту.
Дзякуем за ўнесены ўклад Глевіна Віхерта (Glavin Wiechert)!

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

Хуткія клавішы для наступнага і папярэдняга файла ў мердж-рэквест

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Праглядаючы змены ў мердж-рэквесце, можна хутка перамыкацца паміж файламі з дапамогай ]або j для пераходу да наступнага файла і [ або k для пераходу да папярэдняга файла.

Дакуменацыя
Задача

Спрашчэнне .gitlab-ci.yml для serverless праектаў

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Створаны на аснове функцыяналу include GitLab CI, serverless шаблон gitlab-ci.yml значна спрошчаны. Каб у будучых рэлізах увесці новыя функцыі, змены ў гэты файл уносіць не трэба.

Дакументацыя
Задача

Падтрымка імёнаў хастоў Ingress

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Падчас дэплою кантролера Kubernetes Ingress некаторыя платформы вяртаюцца да IP-адрасу (напрыклад, GKE ад Google), а іншыя - да DNS-імя (напрыклад, EKS ад AWS).

Наша інтэграцыя Kubernetes зараз падтрымлівае абодва тыпу канчатковых кропак для адлюстравання ў раздзеле clusters праекта.

Дзякуем за ўклад Аарона Уокера (Аарон Уокер)!

Дакументацыя
Задача

Абмежаванне доступу для ўваходу ў JupyterHub толькі для ўдзельнікаў групы/праекта

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Дэплой JupyterHub з дапамогай інтэграцыі GitLab з Kubernetes - выдатны спосаб абслугоўвання і выкарыстання Jupyter Notebook у вялікіх групах. Таксама карысна кантраляваць доступ да іх пры перадачы канфідэнцыйных ці асабістых дадзеных.

У GitLab 11.9 магчымасць уваходу ў асобнікі JupyterHub, разгорнутыя праз Kubernetes, абмежавана ўдзельнікамі праекту з узроўнем доступу "распрацоўнік" (праз групу ці праект).

Дакументацыя
Задача

Наладжвальныя часовыя дыяпазоны для схем панэлі бяспекі

(ULTIMATE, GOLD)

Панэль бяспекі групы ўключае схему ўразлівасцяў для агляду бягучага статуту бяспекі праектаў групы. Гэта вельмі карысна для дырэктараў па бяспецы для наладкі працэсаў і разумення механізму працы каманды.

У GitLab 11.9 зараз можна абраць часавы дыяпазон гэтай схемы ўразлівасцяў. Па змаўчанні гэта апошнія 90 дзён, але можна ўсталяваць прамежак у 60 ці 30 дзён, у залежнасці ад неабходнага ўзроўня дэталізацыі.

Гэта не ўплывае на дадзеныя ў лічыльніках ці ў спісе, толькі на кропкі дадзеных, якія адлюстроўваюцца на схеме.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў

Дакументацыя
Задача

Даданне джоба па зборцы Auto DevOps для тэгаў

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Этап аўтаматычнай зборкі Auto DevOps стварае зборку вашага дадатку, выкарыстоўваючы Dockerfile праекта або пакета зборкі Heroku.

У GitLab 11.9 атрыманы Docker image, убудаваны ў пайплайн тэгаў, атрымлівае назву аналагічна традыцыйным назвам вобразаў з дапамогай комміта tag замест комміта SHA.
Дзякуем за ўклад Аарона Уокера (Aaron Walker)!

Абнаўленне Code Climate да версіі 0.83.0

(STARTER, PREMIUM, ULTIMATE, BRONZE, SILVER, GOLD)

GitLab Якасць кода выкарыстоўвае рухавічок Code Climate для праверкі таго, як змены ўплываюць на стан вашага кода і праекта.

У GitLab 11.9/XNUMX мы абнавілі рухавічок да апошняй версіі (0.83.0), каб даць перавагі дадатковай мовы і падтрымкі статычнага аналізу для GitLab Code Quality.

Дзякуем за ўклад члена каманды GitLab Core Такуйя Нагуці (Takuya Noguchi)!

Дакументацыя
Задача

Маштабаванне і пракрутка панэлі метрык

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Калі даследуеш анамаліі прадукцыйнасці, часта бывае карысна больш уважліва зірнуць на асобныя часткі пэўнай метрыкі.

З GitLab 11.9 карыстачы змогуць маштабаваць асобныя часавыя перыяды на панэлі метрык, пракручваць увесь часавы прамежак, а таксама лёгка вяртацца да выгляду зыходнага часавага інтэрвалу. Гэта дазваляе лёгка і хутка даследаваць патрэбныя падзеі.

Выпушчаны GitLab 11.9 з функцыяй выяўлення сакрэтаў і некалькімі правіламі дазволу мердж-рэквестаў
Дакументацыя
Задача

SAST для TypeScript

(ULTIMATE, GOLD)

машынапіс - гэта адносна новая мова праграмавання на аснове JavaScript.

У GitLab 11.9/XNUMX функцыя Статычнага тэставання бяспекі прыкладання (SAST) аналізуе і выяўляе ўразлівасці кода TypeScript, дэманструючы іх у віджэце мердж-запыту, на ўзроўні пайплайна і на панэлі бяспекі. Бягучы вызначэнне джоба sast мяняць не трэба, і яно таксама аўтаматычна ўключана ў Auto DevOps.

Дакументацыя
Задача

SAST для шматмодульных праектаў Maven

(ULTIMATE, GOLD)

Праекты Maven часта арганізаваны так, каб аб'ядноўваць некалькі модуляў у адным рэпазітары. Раней GitLab не мог карэктна сканаваць такія праекты, і распрацоўшчыкі і спецыялісты па бяспецы не атрымлівалі справаздачы аб уразлівасцях.

GitLab 11.9 прапануе пашыраную падтрымку функцыі SAST для дадзенай канкрэтнай канфігурацыі праекту, забяспечваючы магчымасць тэставаць іх на прадмет уразлівасцяў у зыходным стане. Дзякуючы гнуткасці аналізатараў канфігурацыя вызначаецца аўтаматычна, і вам не трэба нешта мяняць для прагляду вынікаў па шматмодульным прыкладанням Maven. Як звычайна, аналагічныя паляпшэнні таксама даступныя ў рамках Auto DevOps.

Дакументацыя
Задача

GitLab Runner 11.9/XNUMX

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Сёння мы таксама выпусцілі GitLab Runner 11.9/XNUMX! GitLab Runner - гэта праект з адкрытым зыходным кодам і выкарыстоўваецца для запуску заданняў CI/CD і адпраўкі вынікаў назад у GitLab.

Ніжэй прадстаўлены некаторыя змены ў GitLab Runner 11.9/XNUMX:

Поўны спіс змен можна знайсці ў часопісе змен GitLab Runner: ЗМЯНЕННЕ.

Дакументацыя

Паляпшэнні схемы GitLab

(CORE, STARTER, PREMIUM, ULTIMATE)

У GitLab chart унесены наступныя паляпшэнні:

  • Дададзена падтрымка Google Cloud Memorystore.
  • Налады Cron job зараз глабальныя, паколькі яны выкарыстоўваюцца некалькімі сервісамі.
  • Рэестр абноўлены да версіі 2.7.1.
  • Дададзены новы параметр, які забяспечвае сумяшчальнасць рэестра GitLab з версіямі Docker да 1.10. Для актывацыі ўсталюеце registry.compatibility.schema1.enabled: true.

Дакументацыя

паляпшэнне прадукцыйнасці

(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD)

Мы працягваем паляпшаць прадукцыйнасць GitLab з кожным выпускам для асобнікаў GitLab любога памеру. Вось некаторыя паляпшэнні ў GitLab 11.9:

паляпшэння прадукцыйнасці

Паляпшэнні Omnibus

(CORE, STARTER, PREMIUM, ULTIMATE)

У GitLab 11.9 унесены наступныя паляпшэнні Omnibus:

  • GitLab 11.9 уключае Самае важнае 5.8, альтэрнатыву Slack з адчыненым зыходным кодам, У апошні рэліз якога ўваходзяць MFA для Team Edition, падвышаная прадукцыйнасць вобразаў і многае іншае. Гэтая версія таксама ўключае паляпшэння бяспекі; рэкамендуецца абнаўленне.
  • Дададзены новы параметр, які забяспечвае сумяшчальнасць рэестра GitLab з версіямі Docker да 1.10. Для актывацыі ўсталюеце registry['compatibility_schema1_enabled'] = true в gitlab.rb.
  • Рэестр GitLab зараз экспартуе метрыкі Prometheus і аўтаматычна кантралюецца ўваходзяць у камплект сэрвісам Prometheus.
  • Дададзена падтрымка Google Cloud Memorystore, якая патрабуе отключения redis_enable_client.
  • openssl абноўлены да версіі 1.0.2r, nginx - да версіі 1.14.2, python - да версіі 3.4.9, jemalloc - да версіі 5.1.0, docutils - да версіі 0.13.1, gitlab-monitor- Да версіі 3.2.0.

Састарэлыя фічы

GitLab Geo забяспечыць хэшаванае захоўванне ў GitLab 12.0

GitLab Geo патрабуецца хэшаванае сховішча для змякчэння канкурэнцыі (race condition) на другасных нодах. Гэта было адзначана ў gitlab-ce#40970.

У GitLab 11.5 мы дадалі гэтае патрабаванне ў дакументацыю Geo: gitlab-ee # 8053.

У GitLab 11.6 sudo gitlab-rake gitlab: geo: check правярае, ці ўключана хэшаванае сховішча і ці ўсе праекты пераносяцца. Глядзі. gitlab-ee#8289. Калі вы карыстаецеся Geo, калі ласка, запусціце гэтую праверку і мігруйце як мага хутчэй.

У GitLab 11.8 пастаянна адключанае папярэджанне gitlab-ee!8433 будзе адлюстроўвацца на старонцы Admin Area › Geo › Nodes, калі вышэйзгаданыя праверкі не дазволеныя.

У GitLab 12.0 Geo будзе выкарыстоўваць патрабаванні да хэшаванага сховішча. Глядзі. gitlab-ee#8690.

Дата выдалення: 22 чэрвеня 2019 г.

Інтэграцыя Hipchat

HipChat не падтрымліваецца. Акрамя таго, у версіі 11.9 мы выдалілі існуючую фічу інтэграцыі Hipchat у GitLab.

Дата выдалення: 22 сакавіка 2019 г.

Падтрымка CentOS 6 для GitLab Runner з дапамогай Docker executor

GitLab Runner не падтрымлівае CentOS 6, калі выкарыстоўваецца Docker у GitLab 11.9. Гэта вынік абнаўлення базавай бібліятэкі Docker, якая больш не падтрымлівае CentOS 6. Падрабязней глядзіце ў дадзенай задачы.

Дата выдалення: 22 сакавіка 2019 г.

Састарэлыя шляхі legacy кода GitLab Runner

Пачынаючы з Gitlab 11.9/XNUMX GitLab Runner выкарыстоўвае новы метад кланавання/выкліку рэпазітара. У цяперашні час GitLab Runner будзе выкарыстоўваць стары метад, калі новы не падтрымліваецца.

У GitLab 11.0 мы змянілі выгляд канфігурацыі сервера метрык для GitLab Runner. metrics_server будзе выдалены на карысць listen_address у GitLab 12.0. Падрабязней глядзіце ў дадзенай задачы. І яшчэ дэталі ў гэтай задачы.

У версіі 11.3 GitLab Runner пачаў падтрымліваць некалькі кэш-правайдэраў, што прывяло да новых налад для канкрэтнай канфігурацыі S3. У дакументацыі прыведзена табліца змен і інструкцыі па пераходзе да новай канфігурацыі. Падрабязней глядзіце ў дадзенай задачы.

Гэтыя шляхі больш не даступныя ў GitLab 12.0. Як карыстачу, вам не трэба нічога змяняць, толькі пераканацца, што асобнік GitLab працуе з версіяй 11.9+ пры абнаўленні да GitLab Runner 12.0.

Дата выдалення: 22 чэрвеня 2019 г.

Састарэлы параметр для фічы кропкі ўваходу для GitLab Runner

У 11.4/XNUMX GitLab Runner прадстаўлены параметр фічы FF_K8S_USE_ENTRYPOINT_OVER_COMMAND для выпраўлення такіх праблем, як #2338 и #3536.

У GitLab 12.0 мы пераключымся на правільныя паводзіны, як калі б параметр фічы быў адключаны. Падрабязней глядзіце ў дадзенай задачы.

Дата выдалення: 22 чэрвеня 2019 г.

Састарэлая падтрымка дыстрыбутыва Linux, які дасягнуў EOL, для GitLab Runner

Некаторыя дыстрыбутывы Linux, у якія можна ўсталяваць GitLab Runner, сваё адслужылі.

У GitLab 12.0 GitLab Runner больш не будзе размяркоўваць пакеты ў такія дыстрыбутывы Linux. Поўны спіс дыстрыбутываў, якія больш не падтрымліваюцца, можна знайсці ў нашай дакументацыі. Дзякуй Хаўеру Ардо (Javier Jardón) за яго ўклад!

Дата выдалення: 22 чэрвеня 2019 г.

Выдаленне старых каманд GitLab Runner Helper

У рамках намаганняў па падтрымцы Windows Docker executor прыйшлося адмовіцца ад некаторых старых каманд, якія выкарыстоўваюцца для helper image.

У GitLab 12.0 GitLab Runner запускаецца з дапамогай новых каманд. Гэта датычыцца толькі карыстальнікаў, якія перавызначаюць helper image. Падрабязней глядзіце ў дадзенай задачы.

Дата выдалення: 22 чэрвеня 2019 г.

Распрацоўнікі могуць выдаліць тэгі Git у GitLab 11.10

Выдаленне або рэдагаванне заўваг да версіі для тэгаў Git у неабароненых галінах гістарычна абмяжоўвалася толькі суправаджаючымі і ўладальнікамі.

Паколькі распрацоўшчыкі могуць дадаваць тэгі, а таксама змяняць і выдаляць неабароненыя галіны, распрацоўшчыкі павінны мець магчымасць выдаляць тэгі Git. У GitLab 11.10 мы ўносім гэтую змену у нашу мадэль дазволаў, каб палепшыць працоўны працэс і дапамагчы распрацоўшчыкам лепш і больш эфектыўна выкарыстоўваць тэгі.

Калі хочаце захаваць гэта абмежаванне для суправаджаючых і ўладальнікаў, выкарыстоўвайце абароненыя тэгі.

Дата выдалення: 22 красавіка 2019 г.

Падтрымка Prometheus 1.x у Omnibus GitLab

Пачынаючы з GitLab 11.4, убудаваная версія Prometheus 1.0 выключана з Omnibus GitLab. Цяпер уключана версія Prometheus 2.0. Аднак фармат метрык несумяшчальны з версіяй 1.0. Існыя версіі можна абнавіць да 2.0 і, пры неабходнасці, перанесці дадзеныя з дапамогай убудаванай прылады.

У GitLab версіі 12.0 будзе аўтаматычна ўстанаўлівацца Prometheus 2.0, калі абнаўлення яшчэ не было. Дадзеныя з Prometheus 1.0 будуць згублены, т.я. не пераносяцца.

Дата выдалення: 22 чэрвеня 2019 г.

TLS версіі 1.1

Пачынаючы з GitLab 12.0 TLS v1.1 будзе адключаны па змаўчанні для павышэння бяспекі. Гэта ўхіляе шматлікія праблемы, уключаючы Heartbleed, і робіць GitLab "са скрынкі" сумяшчальным са стандартам PCI DSS 3.1.

Каб неадкладна адключыць TLS v1.1, усталюеце nginx['ssl_protocols'] = "TLSv1.2" в gitlab.rband і запусціце gitlab-ctl reconfigure.

Дата выдалення: 22 чэрвеня 2019 г.

Шаблон OpenShift для ўстаноўкі GitLab

Афіцыйны gitlab helm chart - Рэкамендуемы метад працы GitLab на Kubernetes, уключаючы дэплой на OpenShift.

Шаблон OpenShift для ўстаноўкі GitLab састарэлы і больш не будзе падтрымлівацца ў Лабараторыя Git 12.0.

Дата выдалення: 22 чэрвеня 2019 г.

Папярэднія азначэнні security jobs

З увядзеннем шаблонаў CI/CD для security jobs любыя папярэднія азначэнні джобаў састарваюцца і будуць выдаленыя ў GitLab 12.0 ці пазней.

Абнавіце вызначэння джобаў, каб выкарыстоўваць новы сінтаксіс і скарыстацца ўсімі новымі функцыямі бяспекі, якія прадстаўляюцца GitLab.

Дата выдалення: 22 чэрвеня 2019 г.

Раздзел System Info у панэлі адміністратара

GitLab прадстаўляе інфармацыю аб вашым экзэмпляры GitLab у admin/system_info, Але гэтая інфармацыя можа быць недакладнай.

Мы выдалім гэты раздзел панэлі адміністратара ў GitLab 12.0 і рэкамендуемы выкарыстоўваць іншыя магчымасці маніторынгу.

Дата выдалення: 22 чэрвеня 2019 г.

Крыніца: habr.com

Дадаць каментар