Helyettesítő kártyák és feltételes kifejezések támogatása YAML-folyamatfájlokban

Ebben a futamban támogattuk a helyettesítő kártyákat és a feltételes kifejezéseket a YAML-folyamatfájlokhoz. Emellett több frissítést is végeztünk az Azure Pipelines által üzemeltetett rendszerképeken.

A részletekért tekintse meg az alábbi funkcióleírásokat.

Azure Pipelines

Azure Repos

Azure Pipelines

Új feltételes YAML-kifejezések

A feltételes kifejezések YAML-fájlokban való írása ${{ else }} egyszerűbbé lett a kifejezések és ${{ elseif }} a kifejezések használatával. Az alábbiakban példákat talál arra, hogyan használhatja ezeket a kifejezéseket YAML-folyamatok fájljaiban.

steps:
- script: tool
  env:
    ${{ if parameters.debug }}:
      TOOL_DEBUG: true
      TOOL_DEBUG_DIR: _dbg
    ${{ else }}:
      TOOL_DEBUG: false
      TOOL_DEBUG_DIR: _dbg
variables:
  ${{ if eq(parameters.os, 'win') }}:
    testsFolder: windows
  ${{ elseif eq(parameters.os, 'linux') }}:
    testsFolder: linux
  ${{ else }}:
    testsFolder: mac

Helyettesítő karakterek támogatása az elérésiút-szűrőkben

Helyettesítő kártyák használhatók a CI- vagy PR-triggerek belefoglalási és kizárási ágainak megadásához egy folyamat YAML-fájljában. Elérésiút-szűrők megadásakor azonban nem használhatók. Például nem vehet fel minden egyező src/app/**/myapp*elérési utat. Erre több ügyfél is felhívta a figyelmet. Ez a frissítés kitölti ezt a rést. Most használhat helyettesítő karaktereket (**vagy *?) az elérési utak szűrőinek megadásakor.

Több állapot támogatása a Bitbucketben

Az Azure Pipelines integrálható a Bitbucket-adattárakkal, és támogatja a CI- és PR-triggereket. Több folyamatot is beállíthat egyetlen Bitbucket-adattárból. Amikor azonban ezek a folyamatok befejeződtek, csak egy állapotot láthatott a Bitbucketben. Visszajelzést kaptunk a fejlesztői közösségtől , amely azt kérte, hogy külön tekintse meg az egyes folyamatok állapotát a Bitbucketben. Ezzel a frissítéssel frissítettük a Bitbucket api-hívásait, és további információkat adtunk át a folyamat nevéről.

Build status

Annak engedélyezése, hogy a közreműködők kihagyják a PR-megjegyzések keresését a build érvényesítése előtt

Ha Az Azure Pipelinest GitHub-adattárakkal használja, javasoljuk, hogy ne futtasson automatikusan pr-érvényesítési folyamatot az elágaztatott adattárakból kapott hozzájárulásokhoz. Az ajánlott eljárás az, hogy először az adattár egyik közreműködője tekintse át a módosítást, majd adjon hozzá egy megjegyzést a kérelemhez a folyamat aktiválásához. Ezeket a beállításokat konfigurálhatja az Eseményindítók menü (YAML-folyamatok esetén) vagy az Eseményindítók lap (klasszikus buildelési folyamatok esetén) kiválasztásával a folyamat webszerkesztőjében. Ahelyett, hogy az elágazásból származó összes PR-t először egy csapattagnak kellene felülvizsgálnia, ezt a szabályzatot csak a nem csapattagoktól származó hozzájárulásokra is érvényesítheti.

Ezzel a frissítéssel lehetővé tesszük, hogy kihagyja a bármely közreműködő által kapott hozzájárulások pr-megjegyzésének keresését. Nem csapattagként, amikor létrehoz egy elágazást, és létrehoz egy lekéréses kérelmet a felsőbb rétegbe, a rendszer nem tekinti a felsőbb rétegbeli adattár közreműködőjének, amíg a lekéréses kérelem össze nem egyesül. A lekéréses kérelem egyesítése után ön közreműködőnek minősül. Ha az alábbi új lehetőséget választja, amikor egy nem csapattag először küld le egy lekéréses kérelmet egy elágazásból, a csapat egy tagjának át kell tekintenie a lekéréses kérelmet, és megjegyzést kell fűznie a folyamat aktiválásához. A pr összevonása után azonban a nem csapattag által végzett további hozzájárulások közvetlenül aktiválják a folyamatot anélkül, hogy pr-megjegyzésre várnak.

Require a team member's comment before building a pull request

A Visual Studio 2022-t tartalmazó Windows Server 2022 mostantól elérhető a Microsoft által üzemeltetett ügynökökben (előzetes verzió)

A Windows Server 2022 és a Visual Studio Enterprise 2022 előzetes verziója mostantól előzetes verzióban érhető el a Microsoft által üzemeltetett ügynökökben. Ezt úgy használhatja, hogy a folyamat képeként hivatkozik windows-2022 rá.

pool:
  vmImage: 'windows-2022'

steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
  inputs:
    restoreSolution: '**/*.sln'
- task: VSBuild@1 # Visual Studio 2022 build
  inputs:
    solution: '**/*.sln'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
    platform: 'Any CPU'
    configuration: 'Release'

Ha a YAML-folyamatok windowsos legújabb készletére hivatkozik, az továbbra is a Windows-2019-et jelenti, és nem a Windows-2022-t, míg az utóbbi előzetes verzióban érhető el.

A Windows Server 2022 folyamat lemezképe különböző eszközökkel és eszközverziókkal rendelkezik a Windows Server 2019-hez képest. A részleteket a szoftverbejelentkeztetés problémájában és a dokumentáció virtuális környezetek adattárában tekintheti meg.

A macOS 11 általános elérhetősége a Microsoft által üzemeltetett ügynökökön

A macOS 11 mostantól általánosan elérhető a Microsoft által üzemeltetett ügynökökben. Ezt úgy használhatja, hogy a folyamat képeként hivatkozik macos-11 rá.

pool:
  vmImage: macos-11

A macOS 11 folyamat lemezképe különböző eszközökkel és eszközökkel rendelkezik, a verzióval kapcsolatos további információkért a teljes dokumentációt itt találja.

Az Ubuntu 16.04 rendszerkép eltávolítása a Microsoft által üzemeltetett ügynökökön

Ahogy korábban bejelentettük, 2021. szeptember 20-án eltávolítjuk az Ubuntu 16.04-rendszerképet a Microsoft által üzemeltetett ügynökökből. A Canonical Ubuntu 16.04 hagyományos 5 éves támogatása 2021 áprilisában véget ért. Az ubuntu-16.04 folyamatokat ubuntu-18.04 vagy ubuntu-latest rendszerre kell migrálnia, amelyek az Ubuntu 20.04 LTS-en fognak futni.

Az Ubuntu-16.04-et használó buildek már figyelmeztetést is be vannak jelentkeztetve. Annak érdekében, hogy mindenki tisztában legyen ezzel a változással, 2 rövid "brownouts"-t ütemeztünk. Az Ubuntu 16.04-es buildjei a leállási időszakban meghiúsulnak. Ezért javasoljuk, hogy 2021. szeptember 6-a előtt migrálja a munkafolyamatokat.

A barnítások a következő dátumokra és időpontokra vannak ütemezve (Vegye figyelembe, hogy ezek a korábbi bejelentési időpontoktól egy órával meghosszabbítva): 2021. szeptember 6. 16:00 (UTC) – 2021. szeptember 14. 16:00 (UTC) – 10:00 (UTC)

Azure Repos

Általánosan elérhetők az új TFVC-oldalak

Az Azure DevOps különböző lapjait frissítettük egy új webplatform használatára azzal a céllal, hogy a felhasználói élmény konzisztensebbé és akadálymentesebbé váljon a különböző szolgáltatásokban. A TFVC-lapokat frissítettük az új webes platform használatára, és ezek a módosítások már több hónapja előzetes verzióban jelennek meg. Ezzel a frissítéssel általánosan elérhetővé tesszük az új TFVC-lapokat. Ezzel a frissítéssel többé nem fog megjelenni az "Új TFVC-lapok" nevű előzetes verziójú funkció a felhasználói beállításokban.

Az ágak létrehozóinak konfigurálása arra, hogy ne kapják meg az „Engedélyek kezelése“ engedélyt az ágaikon

Amikor új ágat hoz létre, az adott ágon megjelenik az "Engedélyek kezelése" kifejezés. Ezzel az engedéllyel módosíthatja más felhasználók engedélyeit, vagy beengedhet további felhasználókat, hogy hozzájáruljanak az adott ághoz. Egy ág létrehozója például ezt az engedélyt arra használhatja, hogy egy másik külső felhasználó módosítsa a kódot. Vagy engedélyezhetik, hogy egy folyamat (szolgáltatásadentitás összeállítása) módosítsa a kódot az adott ágban. Bizonyos, magasabb megfelelőségi követelményekkel rendelkező szervezetekben a felhasználók nem végezhetnek ilyen módosításokat.

Ezzel a frissítéssel konfigurálhatja a csapatprojekt összes adattárát, és korlátozhatja az ág létrehozói számára az "Engedélyek kezelése" engedélyt. Ehhez keresse meg a projekt beállításait, válassza az Adattárak lehetőséget, majd Gépház az összes adattárhoz vagy egy adott adattárhoz.

All repositories settings

Ez a beállítás alapértelmezés szerint be van kapcsolva a meglévő viselkedés utánzásához. De kikapcsolhatja, ha használni szeretné ezt az új biztonsági funkciót.

Annak megelőzése, hogy az adattármásolatok felhasználói a kiinduló PR-ekre szavazzanak

Az Azure-adattárakban az "olvasási" engedéllyel rendelkező felhasználók elágazhatják az adattárat, és módosíthatják az elágazásukat. Ahhoz, hogy egy lekéréses kérelmet elküldhessenek a felsőbb rétegbe való módosításokkal együtt, a felhasználóknak "közreműködésre van szükségük a lekéréses kérelmekhez" engedélyre a felsőbb rétegben. Ez az engedély azonban azt is szabályozza, hogy ki szavazhat a lekéréses kérelmekre a felsőbb rétegbeli adattárban. Ennek eredményeképpen olyan helyzetekbe kerülhet, amikor egy felhasználó, aki nem közreműködője az adattárnak, elküldhet egy lekéréses kérelmet, és a fiókszabályzatok beállításától függően egyesítheti azt.

A belső forráskódmodellt előléptető szervezetekben az elágazás és a közreműködés gyakori minta. A minta további védelme és előmozdítása érdekében módosítjuk a lekéréses kérelmekre vonatkozó szavazati engedélyt a "hozzájárulás a lekéréses kérelmekhez" és a "hozzájárulás" értékre. Ez a módosítás azonban alapértelmezés szerint nem minden szervezetben történik. Az engedély váltásához be kell jelentkeznie, és ki kell választania egy új szabályzatot az adattárban, "Szigorú szavazási mód" néven. Javasoljuk, hogy ezt tegye, ha az Azure-adattárakban lévő villákra támaszkodik.

Repository settings

További lépések

Megjegyzés:

Ezek a funkciók a következő két-három hétben jelennek meg.

Lépjen az Azure DevOpsba, és nézze meg.

Visszajelzés küldése

Szeretnénk hallani, mit gondol ezekről a funkciókról. A súgómenüvel jelentheti a problémát, vagy javaslatot adhat.

Make a suggestion

Tanácsokat és kérdéseket is kaphat a közösség által a Stack Overflow-on.

Köszönettel:

Aaron Hallberg