A csapatautomatizálási szabályok általános elérhetősége és továbbfejlesztett AB#-ellenőrzés
Örömmel jelentjük be, hogy általánosan elérhető az Azure Boards App továbbfejlesztett AB#-ellenőrzése a GitHubon és a Team Automation-szabályokban! Javítottuk az AB#-ellenőrzést, hogy értesítést kapjon, ha egy munkaelemre mutató hivatkozás érvénytelen. A Csapatautomatizálási szabályokban most már konfigurálhatja az egyes hátralékszinteket a munkaelemek megnyitásának és bezárásának/feloldásának automatizálására a gyermekelem állapota(i) alapján.
Ezzel a frissítéssel az egyéni CodeQL-lekérdezések támogatását is bevezetjük a Kódkeresésben! Ez lehetővé teszi saját lekérdezések készítését, amelyek a kódbázissal kapcsolatos problémák azonosítására vannak kialakítva.
Részletekért tekintse meg a kibocsátási megjegyzéseket.
GitHub Advanced Security for Azure DevOps
Azure Boards
- GitHub-integráció – Általánosan elérhető a továbbfejlesztett AB#-ellenőrzés
- Általánosan elérhetőek a csapatautomatizálási szabályok
Azure Pipelines
- Elavult tevékenységek frissítése január 31-ig
- A Microsoft által üzemeltetett ügynökök a PowerShell 7.4-et használják
- Az Új Azure-szolgáltatás kapcsolati titkos kódjai három hónap múlva lejárnak
GitHub Advanced Security for Azure DevOps
Az Egyéni CodeQL-lekérdezések mostantól támogatottak az Azure DevOps GitHub Advanced Security szolgáltatásában
Örömmel jelentjük be az egyéni CodeQL-lekérdezések támogatásának bevezetését a Kódkeresésben! Ez lehetővé teszi a saját, a kódbázisra jellemző problémák azonosítására szabott lekérdezések készítését. Most létrehozhat és közzétehet egyéni lekérdezéseket tartalmazó csomagokat, végrehajthatja ezeket a lekérdezéseket a folyamatokban, és testre szabhatja a szervezet számára lényeges biztonsági rések észlelését.
Az egyéni lekérdezések Azure DevOpshoz készült GitHub Advanced Securityben történő kódvizsgálathoz való használatával kapcsolatos további információkért tekintse meg az Azure DevOps GitHub Advanced Securityre vonatkozó kódvizsgálati riasztásait.
Nagyra értékeljük a bemenetet. Ha bármilyen kérdése vagy visszajelzése van, javasoljuk, hogy vegye fel a kapcsolatot közösségünkkel a Fejlesztői közösségnél.
Azure Boards
GitHub-integráció – Általánosan elérhető a továbbfejlesztett AB#-ellenőrzés
Néhány sprintel ezelőtt bejelentettük, hogy az Azure Boards App továbbfejlesztett AB#-érvényesítési előzetes verziója a GitHubon. Továbbfejlesztettük az alkalmazást, hogy jobban értesítsük a felhasználókat a munkaelem-hivatkozások érvényességéről, így könnyebben észlelhetik és kijavíthatják a problémákat a lekéréses kérelmek egyesítése előtt.
Több hetes tesztelés és visszajelzés után ez a funkció már elérhető a GitHub + Azure Boards integrációt használó összes felhasználó számára.
Ez az első olyan funkció, amelyet a jelenlegi integráció javítása érdekében teszünk. Mindenképpen tekintse meg a nyilvános ütemtervben tervezett többi Azure Boards + GitHub integrációs funkciót .
Fontos
2024. 08. 06-ától a GitHub Azure Boards appja már nem ellenőrzi az AB#-hivatkozásokat. A szintaxissal AB#
továbbra is csatolhat munkaelemeket a GitHub-lekéréses kérelmekben, véglegesítésekben és problémákban, ahogy ezt a módosítás előtt is megteheti.
A csapatautomatizálási szabályok általánosan elérhetők
Örömmel jelentjük be a funkció kiadását az Azure DevOps Service összes ügyfele számára.
Feljegyzés
Ez a funkció a következő két-három hétben jelenik meg. Előfordulhat, hogy 2024 február elejéig nem érhető el a szervezet számára.
Most már konfigurálhatja az egyes hátralékszinteket, hogy automatizálják a munkaelemek megnyitását és bezárását (vagy feloldását) a gyermekelemek állapota alapján. Két fő forgatókönyvet próbálunk megoldani.
- Egyetlen gyermekelem aktiválása után aktiválja a szülőt.
- Ha az összes gyermekelem bezárul, zárja be a szülőt (vagy oldja fel).
A beállítások engedélyezéséhez kattintson a csapat hátralékszintű konfigurációjára. Ezután lépjen az Automation-szabályok > lapra , és tekintse meg a hátralékra alkalmazható két különböző szabályt. Az egyes hátralékszintek (követelmények, funkciók, eposzok) a csapat működésétől függően eltérően konfigurálhatók.
Ha például egy gyermekfeladat aktív értékre van állítva, a szülő felhasználói történet aktívvá tétele. Ezután, amikor az összes tevékenység befejeződött, állítsa be a felhasználói történetet lezártra.
Erről a funkcióról a dokumentáció és a blogbejegyzés áttekintésével tudhat meg többet.
Ez a funkció a fejlesztői közösség javaslati jegye alapján lett rangsorolásra.
Azure Pipelines
Elavult tevékenységek frissítése január 31-ig
2024. január 31-én megszüntetjük az elavult feladatokat. A feladatokat használó folyamatok azonosításához egy javasolt alternatívát tartalmazó figyelmeztető üzenetet tartalmaztunk. Javasoljuk, hogy 2024. január 31-ig frissítse a folyamatokat egy újabb feladatverzió vagy alternatív verzió használatára.
Tekintse meg az elavult tevékenységekkel kapcsolatos korábbi közleményeket:
- Az elavult tevékenységek kivonásának bejelentése
- A NuGet Restore v1 és a NuGet Installer v0 folyamatfeladatainak bejelentése
A Microsoft által üzemeltetett ügynökök a PowerShell 7.4-et használják
Január 28-tól minden Microsoft által üzemeltetett ügynök a PowerShell 7.2 LTS-t fogja használni a PowerShell 7.4 LTS-hez. A PowerShell 7.4 és a PowerShell 7.4 általános rendelkezésre állásának újdonságai.
Jegyezze fel a kompatibilitástörő változásokat, és frissítse a szkripteket ennek megfelelően:
- Kompatibilitástörő változások a PowerShell 7.3 és 7.4 LTS között
- Kompatibilitástörő változások a PowerShell 7.2 LTS és 7.3 között
- Frissítettük az argumentum-elemzési viselkedést a .
$PSNativeCommandArgumentPassing
Az alábbi példaszkript explicit beállítással$PSNativeCommandArgumentPassing
ugyanazt a viselkedést kényszeríti ki Linux, macOS és Windows rendszeren is.
Az Új Azure-szolgáltatás kapcsolati titkos kódjai három hónap múlva lejárnak
Az Azure Service Connections, ahol az Azure DevOps létrehozza a titkos kódot, két év helyett három hónapos titkos lejárati idővel rendelkezik.
A titkos kulcsok elforgatására való igény kiküszöbölése érdekében alakítsa át a szolgáltatáskapcsolatot számítási feladatok identitás-összevonásának használatára. Az alábbi példaszkripttel gyorsan konvertálhat több Azure-szolgáltatáskapcsolatot számítási feladat identitás-összevonássá:
#!/usr/bin/env pwsh
<#
.SYNOPSIS
Convert multiple Azure Resource Manager service connection(s) to use Workload identity federation
.LINK
https://aka.ms/azdo-rm-workload-identity-conversion
.EXAMPLE
./convert_azurerm_service_connection_to_oidc_simple.ps1 -Project <project> -OrganizationUrl https://dev.azure.com/<organization>
#>
#Requires -Version 7.3
param (
[parameter(Mandatory=$true,HelpMessage="Name of the Azure DevOps Project")]
[string]
[ValidateNotNullOrEmpty()]
$Project,
[parameter(Mandatory=$true,HelpMessage="Url of the Azure DevOps Organization")]
[uri]
[ValidateNotNullOrEmpty()]
$OrganizationUrl
)
$apiVersion = "7.1"
$PSNativeCommandArgumentPassing = "Standard"
#-----------------------------------------------------------
# Log in to Azure
$azdoResource = "499b84ac-1321-427f-aa17-267ca6975798"
az login --allow-no-subscriptions --scope ${azdoResource}/.default
$OrganizationUrl = $OrganizationUrl.ToString().Trim('/')
#-----------------------------------------------------------
# Retrieve the service connection
$getApiUrl = "${OrganizationUrl}/${Project}/_apis/serviceendpoint/endpoints?authSchemes=ServicePrincipal&type=azurerm&includeFailed=false&includeDetails=true&api-version=${apiVersion}"
az rest --resource $azdoResource -u "${getApiUrl} " -m GET --query "sort_by(value[?authorization.scheme=='ServicePrincipal' && data.creationMode=='Automatic' && !(isShared && serviceEndpointProjectReferences[0].projectReference.name!='${Project}')],&name)" -o json `
| Tee-Object -Variable rawResponse | ConvertFrom-Json | Tee-Object -Variable serviceEndpoints | Format-List | Out-String | Write-Debug
if (!$serviceEndpoints -or ($serviceEndpoints.count-eq 0)) {
Write-Warning "No convertible service connections found"
exit 1
}
foreach ($serviceEndpoint in $serviceEndpoints) {
# Prompt user to confirm conversion
$choices = @(
[System.Management.Automation.Host.ChoiceDescription]::new("&Convert", "Converting service connection '$($serviceEndpoint.name)'...")
[System.Management.Automation.Host.ChoiceDescription]::new("&Skip", "Skipping service connection '$($serviceEndpoint.name)'...")
[System.Management.Automation.Host.ChoiceDescription]::new("&Exit", "Exit script")
)
$prompt = $serviceEndpoint.isShared ? "Convert shared service connection '$($serviceEndpoint.name)'?" : "Convert service connection '$($serviceEndpoint.name)'?"
$decision = $Host.UI.PromptForChoice([string]::Empty, $prompt, $choices, $serviceEndpoint.isShared ? 1 : 0)
if ($decision -eq 0) {
Write-Host "$($choices[$decision].HelpMessage)"
} elseif ($decision -eq 1) {
Write-Host "$($PSStyle.Formatting.Warning)$($choices[$decision].HelpMessage)$($PSStyle.Reset)"
continue
} elseif ($decision -ge 2) {
Write-Host "$($PSStyle.Formatting.Warning)$($choices[$decision].HelpMessage)$($PSStyle.Reset)"
exit
}
# Prepare request body
$serviceEndpoint.authorization.scheme = "WorkloadIdentityFederation"
$serviceEndpoint.data.PSObject.Properties.Remove('revertSchemeDeadline')
$serviceEndpoint | ConvertTo-Json -Depth 4 | Write-Debug
$serviceEndpoint | ConvertTo-Json -Depth 4 -Compress | Set-Variable serviceEndpointRequest
$putApiUrl = "${OrganizationUrl}/${Project}/_apis/serviceendpoint/endpoints/$($serviceEndpoint.id)?operation=ConvertAuthenticationScheme&api-version=${apiVersion}"
# Convert service connection
az rest -u "${putApiUrl} " -m PUT -b $serviceEndpointRequest --headers content-type=application/json --resource $azdoResource -o json `
| ConvertFrom-Json | Set-Variable updatedServiceEndpoint
$updatedServiceEndpoint | ConvertTo-Json -Depth 4 | Write-Debug
if (!$updatedServiceEndpoint) {
Write-Debug "Empty response"
Write-Error "Failed to convert service connection '$($serviceEndpoint.name)'"
exit 1
}
Write-Host "Successfully converted service connection '$($serviceEndpoint.name)'"
}
Következő lépések
Feljegyzé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 és kérdéseket is kaphat a közösség által a Stack Overflow-on.
Köszönettel:
Dan Hellem