Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Com esse sprint, estamos aprimorando seu fluxo de trabalho de DevOps com maior visibilidade de segurança e fluxos de trabalho de pipeline simplificados. A Segurança Avançada do GitHub agora inclui o controle de habilitação detalhado para de verificação de dependência, de verificação de código e de verificação secreta, oferecendo insights mais profundos sobre a cobertura de segurança da sua organização.
Além disso, estamos entusiasmados em introduzir aprimoramentos focados em pipeline, incluindo novas funções de expressão YAML e controles expandidos para tarefas de validação manual, permitindo que você crie fluxos de trabalho mais eficientes e seguros.
Confira as notas sobre a versão para obter detalhes.
GitHub Advanced Security para Azure DevOps
Quadros do Azure:
Azure Repos
- Checkout esparso para Repositórios do Azure
- Tornar as políticas entre repositórios diferenciadoras de maiúsculas e minúsculas
Azure Pipelines
Test Plans
GitHub Advanced Security para Azure DevOps
Cobertura da visão geral de segurança específica da ferramenta
A visão geral de segurança no GitHub Advanced Security para Azure DevOps agora fornece uma análise detalhada do status de habilitação para cada ferramenta de verificação, incluindo verificação de dependência, verificação de código e verificação de segredo. Esse aprimoramento permite exibir status de habilitação refinados em todos os repositórios em sua organização.
Para obter mais informações, consulte Visão geral da segurança para Segurança Avançada.
Azure Boards
Integração do Azure Boards com o GitHub Enterprise Cloud com a Residência de Dados (Versão prévia)
Nota
Esse recurso está atualmente em versão prévia. Envie um e-mail se você tiver interesse em experimentar a integração do Boards com o GitHub Enterprise Cloud com a Residência de Dados.
Agora, o Azure Boards dá suporte à integração com organizações do GitHub Enterprise Cloud que têm a residência de dados habilitada. Essa atualização está alinhada com o anúncio de setembro de 2024 do GitHub apresentando a residência de dados para clientes da Nuvem Empresarial, começando pelos da União Europeia (EU).
Para conectar um projeto do Azure Boards à sua organização do GitHub Enterprise Cloud com residência de dados:
- Crie uma nova conexão no Azure Boards.
- Selecione a opção GitHub Enterprise Cloud com a residência de dados.
Azure Repos
Checkout esparso para Repositórios do Azure
O comando git sparse-checkout agora tem suporte na tarefa de check-out do YAML, juntamente com o filtro de clone parcial, para melhorar o desempenho do check-out do repositório. Você pode usar as propriedades sparseCheckoutDirectories e sparseCheckoutPatterns.
Configurar sparseCheckoutDirectories habilita o modo de cone, em que o processo de checkout usa a correspondência de diretório. Como alternativa, você pode definir sparseCheckoutPatterns, que ativa o modo não-cone, permitindo uma correspondência de padrões mais complexa.
Se ambas as propriedades estiverem definidas, o agente inicializará o modo cone com sincronização de diretórios. Se nenhuma propriedade for especificada na tarefa de checkout, o processo de checkout esparso será desabilitado. Todos os problemas encontrados durante a execução do comando resultam na falha da tarefa de check-out.
Exemplo YAML para modo cone de checkout esparso:
- checkout: repo
sparseCheckoutDirectories: src
Exemplo de YAML para o modo sem cone de checkout esparso:
- checkout: repo
sparseCheckoutPatterns: /* !/img
Importante
O recurso de checkout esparso requer o agente v3.248.0 (v4.248.0 para .NET 8) ou versões posteriores.
Você pode encontrar o agente na página de versões.
Tornar as políticas entre repositórios diferenciadoras de maiúsculas e minúsculas
Anteriormente, a pré-visualização do candidato a branch para políticas de repositório cruzado exibia resultados de forma insensível a maiúsculas e minúsculas, apesar da correspondência de branch diferenciar maiúsculas de minúsculas. Essa inconsistência criou um potencial desalinhamento, pois poderia parecer que certas ramificações estavam protegidas quando não estavam. Para resolver esse problema, atualizamos a visualização do padrão de branch para se alinhar com o comportamento que diferencia maiúsculas de minúsculas do aplicativo de política.
Antes:
Depois:
Azure Pipelines
Novas funções de expressão de pipeline
As funções de expressão de pipeline permitem que você escreva pipelines YAML poderosos. Neste sprint, introduzimos duas novas funções:
iif(condition, value_when_true, value_when_false)que retornavalue_when_truequandoconditioné avaliado comotrueouvalue_when_false, por outro ladotrim(string)que retorna uma nova cadeia de caracteres na qual os espaços em branco no início e no final da cadeia de caracteres são removidos
Por exemplo, você pode usar a função iif para selecionar dinamicamente um pool para executar o pipeline. Se você quiser criar solicitações de pull usando o pool do Azure Pipelines, mas todas as outras execuções devem usar um pool de DevOps Gerenciado, você pode escrever o pipeline a seguir.
variables:
poolToUse: ${{ iif(eq(variables['Build.Reason'], 'PullRequest'), 'Azure Pipelines', 'ManagedDevOpsPool')}}
stages:
- stage: build
pool: ${{variables.poolToUse}}
jobs:
- job:
steps:
- task: DotNetCoreCLI@2
inputs:
command: 'build'
Você pode usar a função trim para tornar seu YAML mais resiliente à entrada do usuário. Por exemplo, no pipeline a seguir, usamos a função trim para garantir que o nome do estágio não comece com espaços em branco.
parameters:
- name: regions
type: string
default: ' wus1, wus2, wus3,wus4'
stages:
- ${{ each region in split(parameters.regions, ',')}}:
- stage: stage_${{trim(region)}}
displayName: Deploy to ${{trim(region)}}
jobs:
- job: deploy
steps:
- script: ./deploy.sh ${{trim(region)}}
Aprimoramentos na tarefa ManualValidation
A tarefa ManualValidation permite pausar uma execução de pipeline e aguardar a intervenção manual. Um cenário para usar essa tarefa é o teste manual.
Para aumentar a segurança do pipeline, convém restringir quem está autorizado a concluir a tarefa e retomar a execução do pipeline. Para esse fim, estamos introduzindo uma nova versão da tarefa que fornece dois parâmetros adicionais:
approvers: restringir quem pode concluir a tarefa a um conjunto predefinido de usuários/grupos de segurança/equipesallowApproversToApproveTheirOwnRuns: restringir o usuário que enfileirou a execução do pipeline, impedindo-o de retomá-la
Por exemplo, o seguinte snippet de YAML restringe o conjunto de pessoas que pode retomar a execução do pipeline aos membros do grupo de Aprovadores de Lançamento, mas não inclui o usuário que disparou a execução do pipeline.
- task: ManualValidation@1
inputs:
notifyUsers: 'Release Approvers'
approvers: 'Release Approvers'
allowApproversToApproveTheirOwnRuns: false
Na propriedade approvers, você pode usar os seguintes valores (vírgula separada) :
- Endereço eletrônico
- Grupo de Permissões,
- Equipe do Projeto
- [ProjectName]\[Grupo de Permissões],
- [Org]\[Grupo de Permissões],
- [ProjectName]\[Equipe do Projeto]
Test Plans
Correções de bug dos Planos de Teste do Azure
Com esse sprint, fizemos atualizações nos Planos de Teste do Azure para resolver vários bugs e melhorar a usabilidade. Veja o que foi corrigido:
Resultados de etapa compartilhada já visíveis: Corrigido um bug em que os resultados de etapas compartilhadas não apareciam no editor de consultas ao acessar casos de teste no hub de novos quadros.
Sessões de modo de stakeholder aprimoradas: Resolvemos um problema na extensão de testes e feedback que impedia os usuários com acesso de stakeholder de iniciar sessões.
Cópia otimizada de plano de teste: Corrigido um problema em que os requisitos eram duplicados ao copiar um Plano de Teste usando a opção "Referenciar Casos de Teste Existentes".
Próximas etapas
Nota
Esses recursos serão lançados nas próximas duas a três semanas.
Vá até o Azure DevOps e dê uma olhada.
Como fornecer comentários
Adoraríamos ouvir o que você pensa sobre essas características. Use o menu de ajuda para relatar um problema ou fornecer uma sugestão.
Você também pode obter conselhos e suas perguntas respondidas pela comunidade no Stack Overflow.
Obrigado
Silviu Andrica