Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Örömmel jelentjük be a Copy Dashboard előzetes verziójának néhány régóta várt fejlesztését. Mostantól átmásolhat egy irányítópultot egy másik csapatba, ugyanabba a csapatba vagy egy másik projektbe , és a csapat- és lekérdezéskonfiguráció frissül az új irányítópulton. Ez tovább csökkenti a hasonló irányítópultok több csapat számára történő létrehozásához szükséges munkát.
A részletekért tekintse meg a következő funkcióleírásokat.
General
Azure Pipelines
- Tevékenység automatikus újrapróbálkozása
- Bemenetek felhasználása egy másik feladatból egy dekorátorban
- A szolgáltatáskapcsolatok használati előzményeinek fejlesztései
- A klasszikus folyamatok alapértelmezett ügynökspecifikációja mostantól Windows-2019
Jelentéskészítés
General
Azure DevOps-rendszergazdai szerepkör hozzárendelése egy Azure AD-csoporthoz
Az Azure AD-bérlői szabályzatok Azure DevOpsban való konfigurálásához szükséges Azure DevOps-rendszergazdai szerepkör mostantól hozzárendelhető egy Azure AD-csoporthoz. További információ az Azure AD-csoportok szerepkör-hozzárendelések Azure AD-ben való kezeléséről.
Azure Pipelines
Tevékenység automatikus újrapróbálkozása
Ha egy folyamatban időnként meghiúsuló pelyhes feladat van, előfordulhat, hogy újra kell futtatnia a folyamatot, hogy sikeres legyen. A legtöbb esetben a legjobb módszer egy megbízhatatlan tevékenység vagy szkript kezelésére a feladat vagy a szkript kijavítása. Ha például a tesztfeladat pelyhes tesztek miatt meghiúsul egy folyamatban, mindig érdemes kijavítani a pelyhes teszteket, és megbízhatóbbá tenni őket. Hasonlóképpen, ha a szkript időnként sikertelen lesz, jobb kijavítani a szkriptet, például újrapróbálkozások bevezetésével a szkripten belül.
Vannak azonban olyan esetek, amikor újra meg szeretné próbálkozni a feladatot. Gyakori használati eset ez egy olyan feladat, amely letölt egy csomagot (pl. NuGet, npm stb.). Gyakran megfigyeltük, hogy ezek a feladatok a hálózatkezelési hibákra és a csomagkiszolgálók átmeneti hibáira érzékenyek. Visszajelzését hallottuk arról, hogy jobb lenne automatikusan újrapróbálkozás az ilyen sikertelen feladatokkal anélkül, hogy újra kellene indítania a teljes folyamatot.
A visszajelzése alapján hozzáadtunk egy funkciót, amely automatikusan újrapróbál egy feladatot egy kötelékben, ha az meghiúsul. HA YAML-folyamatokat használ, a következő módon állíthatja be ezt a bemenetet:
- task: <name of task>
retryCountOnTaskFailure: <max number of retries>
...
Klasszikus buildelési vagy kiadási folyamatok használatakor ezt a tulajdonságot a tevékenység vezérlőbeállításai alatt állíthatja be.
Az újrapróbálkozások használatakor az alábbiakat érdemes megjegyezni:
- A sikertelen feladatot azonnal újraindítják.
- A feladat idempotenciáját nem feltételezi. Ha a tevékenységnek vannak mellékhatásai (például ha részben hozott létre külső erőforrást), akkor a második futtatáskor meghiúsulhat.
- A tevékenység számára elérhetővé tett újrapróbálkozás-számról nincs információ.
- A rendszer figyelmeztetést ad a tevékenységnaplókhoz, amely azt jelzi, hogy az újrapróbálkozás előtt sikertelen volt.
- A feladat újrapróbálkozására tett összes kísérlet ugyanazon tevékenységcsomópont részeként jelenik meg a felhasználói felületen.
Megjegyzés:
A 2.194.0-s vagy újabb verziójú ügynökre van szükség. Ügynök nélküli tevékenységek esetén nem támogatott.
Egy dekorátorban felhasználni egy másik feladat eredményeit.
Nemrég hozzáadtunk egy funkciót , amely automatikusan injektál egy feladatot egy folyamatba a folyamat egy másik célfeladata előtt. Ezt a funkciót most azzal bővítjük, hogy testre szabhatja a beszúrt feladatot a céltevékenység bemeneti paramétereivel. A dekoratőr írásának szintaxisa a következő:
{
"contributions": [
{
"id": <my-required-task>,
"type": "ms.azure-pipelines.pipeline-decorator",
"targets": [
"ms.azure-pipelines-agent-job.pre-task-tasks",
"ms.azure-pipelines-agent-job.post-task-tasks"
],
"properties": {
"template": "my-decorator.yml",
"targettask": <target-task-id>,
"targettaskinputs": ["<name of input>"]
}
}
],
...
}
Ez a funkció csak akkor működik, ha ön pre-task-tasks vagy post-task-tasks-t használ célként az injekcióhoz, és megadja a targettask a hozzájárulás tulajdonságok szakaszában. Ezután hozzáadhat egy további, úgynevezett targettaskinputs tulajdonságot, és megadhatja a célfeladat által elfogadott bemeneti paraméternevek listáját. Ezek a bemenetek mostantól elérhetővé válnak az injektált feladat számára.
Az ilyen forgatókönyvek által elvégezhető gyakori használati esetek a következők. Tegyük fel, hogy olyan feladatot szeretne beszúrni, amely automatikusan naplózza a build által közzétett összetevő nevét. A műtárgy neve bemenete a PublishBuildArtifacts feladatnak. Az injektált tevékenység mostantól ugyanazt a bemeneti paramétert kapja, és használhatja naplózásra.
A szolgáltatáskapcsolatok használati előzményeinek fejlesztései
Amikor egy folyamat szolgáltatáskapcsolatot használ, a rendszer naplózza a használatot a kapcsolat előzményei között. A szolgáltatáskapcsolat rendszergazdái a projektbeállításokra lépve és a megfelelő szolgáltatáskapcsolat kiválasztásával áttekinthetik a használati előzményeket. A frissítéssel kijavított szolgáltatáskapcsolatok használati előzményeivel kapcsolatban problémák jártak. A javítások a következőket tartalmazzák:
- Ha szolgáltatáskapcsolatot használ egy üzembehelyezési feladatban (normál feladat helyett), akkor a rendszer nem naplózza a használatot.
- Ha több szolgáltatáskapcsolatot használt egy folyamat több szakaszában, az összes szolgáltatáskapcsolat egy rekordot jelenít meg a használati előzményeikben, annak ellenére, hogy egyes szakaszok kimaradtak.
A klasszikus folyamatok alapértelmezett ügynökspecifikációja mostantól Windows-2019
A legutóbbi kibocsátási megjegyzésekben bejelentettük az üzemeltetett rendszerképek vs2017-win2016 elavulási ütemezését. Ennek előkészítésekor most megváltoztatjuk az alapértelmezett ügynök specifikációját, amikor új folyamatokat hozunk létre a Klasszikus folyamatok keretében windows-2019.
Jelentéskészítés
Irányítópult másolásának fejlesztései
Örömmel jelentjük be a Copy Dashboard 2. fázisának nyilvános előzetesét! A másolási művelettel a lekérdezések és a konfigurációk át lesznek ragadtatva. Köszönjük a türelmét, mivel a problémák megoldása egy kicsit tovább tartott, mint ahogyan vártuk.
Az előnézet alapértelmezés szerint be van kapcsolva az Irányítópult-élmény másolása funkciójelzővel (az előzetes verziójú funkciók alatt).
Irányítópult másolásához először nyissa meg a másolni kívánt irányítópultot. Másodszor kattintson a menüre a Másolás irányítópult megjelenítéséhez, majd kattintson rá.
Ezután adja meg az új irányítópult nevét és leírását, majd válassza ki az irányítópult típusát, csapatát vagy projektét. Csapat irányítópultjának kiválasztásakor az új projekt és a csapat a megfelelő legördülő listákból lesz kiválasztva. Projekt irányítópult esetén csak a projektre van szükség.
Az Létrehozás gombra kattintás után az újonnan létrehozott irányítópultra kerül. A widgetek és az elrendezés változatlanok maradnak.
A színfalak mögött létrejön egy mappa az új irányítópult nevével a megosztott lekérdezésekben. Az új irányítópult összes lekérdezése erre a mappára lesz másolva. A lekérdezésnevek változatlanok maradnak. A csapatkonfigurációval rendelkező widgetek frissülnek az új csapattal. A Csapat irányítópultról a Projekt irányítópultra másolt csapatkonfigurációval rendelkező widgetek megőrzik az eredeti konfigurációt.
Nulla értékek szűrése a burndown diagram widgetben
Mostantól null értékre is szűrhet, ha mezőfeltételeket használ az burndown diagram widgetjében. Ez a viselkedés most már konzisztens egy olyan lekérdezéssel, amely ugyanazt a mezőfeltételt használja.
Következő 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.
Tanácsokat kérhet, és kérdéseire válaszokat kaphat a közösségtől a Stack Overflowplatformon.
Köszönöm
Aaron Hallberg