Awọn ailagbara ninu awọn olutọju Awọn iṣe GitHub, eyiti a pe ni adaṣe laifọwọyi nigbati o ba fi awọn ibeere fifa silẹ si ibi ipamọ package Nixpkgs, ti a lo ninu pinpin NixOS ati ilolupo oluṣakoso package Nix, ti ṣafihan. Ailagbara naa gba olumulo laigba aṣẹ jade lati yọkuro ami-ami kika ati kikọ iraye si koodu orisun ti gbogbo awọn idii ti o gbalejo ni Nixpkgs. Àmi yii gba laaye iyipada taara ti eyikeyi package nipasẹ ibi ipamọ Git ti iṣẹ akanṣe, ni ikọja atunyẹwo ati awọn ilana ifọwọsi.
Agbara lati fi ẹnuko Nixpkgs ati itasi koodu aṣa sinu eyikeyi package jẹ afihan nipasẹ awọn oniwadi aabo ni Oṣu Kẹwa to kọja ni apejọ NixCon ati pe o jẹ pamọ lẹsẹkẹsẹ ninu awọn amayederun iṣẹ akanṣe naa. Sibẹsibẹ, awọn alaye ti ikọlu ni a ti sọ di ọdun kan lẹhinna. Ọrọ naa jẹ ibatan si lilo awọn olutọju GitHub Awọn iṣẹ ni ibi ipamọ Nixpkgs GitHub, eyiti o jẹ adehun si iṣẹlẹ “pull_request_target” ati ṣe awọn sọwedowo adaṣe lori awọn ibeere fifa tuntun.
Ko dabi iṣẹlẹ “pull_request”, awọn oluṣakoso ni “pull_request_target” ni a fun ni iwọle kika/kọ si agbegbe ile, eyiti o nilo itọju pataki nigbati o ba n ṣiṣẹ pẹlu data ti o kọja ni ibeere fifa. Ọkan ninu awọn olutọju ti a dè si "pull_request_target" ṣe ifọwọsi faili "OWNERS" ti a pese ni ibere fifa nipasẹ kikọ ati pipe awọn ohun elo codeowners-validator: awọn igbesẹ: - nlo: awọn iṣẹ/checkout@eef61447b9ff4aafe5dcd4e0bbf pẹlu: ref: refs/pull/-$/me rund path: --$/me rund path: codeownersValidator — ṣiṣe: esi/bin/codeowners-validator env: OWNERS_FILE: pr/ci/OWNERS
Iṣoro naa ni pe ti faili OWNERS ba jẹ tito ni ọna ti ko tọ, ohun elo codeowners-validator yoo gbejade awọn akoonu inu okun aiṣedeede si boṣewa, akọọlẹ wiwọle si gbangba. Ikọlu naa ni fifi ọna asopọ aami kan ti a npè ni OWNERS sinu ibeere fifa, tọka si faili ".awọn iwe-ẹri", eyiti o tọju awọn iwe-ẹri ni agbegbe kikọ. Nitoribẹẹ, ṣiṣiṣẹ faili yii ja si aṣiṣe ati laini akọkọ, ti o ni ami ami iraye si ibi ipamọ, ti jade si akọọlẹ gbogbo eniyan.

Ni afikun, ailagbara miiran ni a rii ninu oluṣakoso ti o ṣayẹwo awọn ofin editorconfig. awọn igbesẹ: — orukọ: Gba atokọ ti awọn faili ti o yipada lati ṣiṣe PR: gh api […] | jq [ … ] > «$ Ile/ayipada_files» - nlo: awọn iṣe/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 pẹlu: ref: refs/fa/$/dapọ — orukọ: Ṣiṣayẹwo OlootuConfig ṣiṣe: ologbo «$ Ile/ayipada_fi xargs -r editorconfig-checker
Ni ọran yii, ọrọ naa ni lilo ohun elo “xargs” lati ṣiṣẹ editorconfig-checker pẹlu faili kọọkan ninu ibeere fifa. Niwọn bi awọn orukọ faili ko ti ni ifọwọsi, ikọlu le pẹlu faili kan ti o ni awọn ohun kikọ pataki ninu ibeere fifa, eyiti yoo ṣe ilana bi awọn ariyanjiyan laini aṣẹ nigbati o nṣiṣẹ editorconfig-checker. Fun apẹẹrẹ, nigba ṣiṣẹda “--help” faili, editorconfig-checker yoo ṣe afihan ofiri kan nipa awọn aṣayan to wa.
orisun: opennet.ru
