Partilhar via


GitHubRelease@0 – Tarefa v0 do GitHub Release

Utilize esta tarefa para criar, editar ou eliminar uma versão do GitHub.

Syntax

# GitHub Release v0
# Create, edit, or delete a GitHub release.
- task: GitHubRelease@0
  inputs:
    gitHubConnection: # string. Required. GitHub connection (OAuth or PAT). 
    repositoryName: '$(Build.Repository.Name)' # string. Required. Repository. Default: $(Build.Repository.Name).
    action: 'create' # 'create' | 'edit' | 'delete'. Required. Action. Default: create.
    #target: '$(Build.SourceVersion)' # string. Required when action = create || action = edit. Target. Default: $(Build.SourceVersion).
    tagSource: 'auto' # 'auto' | 'manual'. Required when action = create. Tag source. Default: auto.
    #tagPattern: # string. Optional. Use when tagSource = auto. Tag Pattern. 
    #tag: # string. Required when action = edit || action = delete || tagSource = manual. Tag. 
    #title: # string. Optional. Use when action = create || action = edit. Release title. 
    #releaseNotesSource: 'file' # 'file' | 'input'. Optional. Use when action = create || action = edit. Release notes source. Default: file.
    #releaseNotesFile: # string. Optional. Use when releaseNotesSource = file. Release notes file path. 
    #releaseNotes: # string. Optional. Use when releaseNotesSource = input. Release notes. 
    #assets: '$(Build.ArtifactStagingDirectory)/*' # string. Optional. Use when action = create || action = edit. Assets. Default: $(Build.ArtifactStagingDirectory)/*.
    #assetUploadMode: 'delete' # 'delete' | 'replace'. Optional. Use when action = edit. Asset upload mode. Default: delete.
    #isDraft: false # boolean. Optional. Use when action = create || action = edit. Draft release. Default: false.
    #isPreRelease: false # boolean. Optional. Use when action = create || action = edit. Pre-release. Default: false.
    #addChangeLog: true # boolean. Optional. Use when action = create || action = edit. Add changelog. Default: true.
  # Changelog configuration
    changeLogCompareToRelease: 'lastFullRelease' # 'lastFullRelease' | 'lastNonDraftRelease' | 'lastNonDraftReleaseByTag'. Required when addChangeLog = true. Compare to. Default: lastFullRelease.
    #changeLogCompareToReleaseTag: # string. Required when changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true. Release Tag. 
    changeLogType: 'commitBased' # 'commitBased' | 'issueBased'. Required when addChangeLog = true. Changelog type. Default: commitBased.
    #changeLogLabels: '[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]' # string. Optional. Use when changeLogType = issueBased && addChangeLog = true. Categories. Default: [{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }].
# GitHub Release v0
# Create, edit, or delete a GitHub release.
- task: GitHubRelease@0
  inputs:
    gitHubConnection: # string. Required. GitHub connection (OAuth or PAT). 
    repositoryName: '$(Build.Repository.Name)' # string. Required. Repository. Default: $(Build.Repository.Name).
    action: 'create' # 'create' | 'edit' | 'delete'. Required. Action. Default: create.
    #target: '$(Build.SourceVersion)' # string. Required when action = create || action = edit. Target. Default: $(Build.SourceVersion).
    tagSource: 'auto' # 'auto' | 'manual'. Required when action = create. Tag source. Default: auto.
    #tag: # string. Required when action = edit || action = delete || tagSource = manual. Tag. 
    #title: # string. Optional. Use when action = create || action = edit. Release title. 
    #releaseNotesSource: 'file' # 'file' | 'input'. Optional. Use when action = create || action = edit. Release notes source. Default: file.
    #releaseNotesFile: # string. Optional. Use when releaseNotesSource = file. Release notes file path. 
    #releaseNotes: # string. Optional. Use when releaseNotesSource = input. Release notes. 
    #assets: '$(Build.ArtifactStagingDirectory)/*' # string. Optional. Use when action = create || action = edit. Assets. Default: $(Build.ArtifactStagingDirectory)/*.
    #assetUploadMode: 'delete' # 'delete' | 'replace'. Optional. Use when action = edit. Asset upload mode. Default: delete.
    #isDraft: false # boolean. Optional. Use when action = create || action = edit. Draft release. Default: false.
    #isPreRelease: false # boolean. Optional. Use when action = create || action = edit. Pre-release. Default: false.
    #addChangeLog: true # boolean. Optional. Use when action = create || action = edit. Add changelog. Default: true.

Entradas

gitHubConnection - Ligação do GitHub (OAuth ou PAT)
string. Obrigatório.

Especifica o nome da ligação do serviço GitHub a utilizar para ligar ao repositório do GitHub. A ligação tem de ser baseada no OAuth de um utilizador do GitHub ou num token de acesso pessoal do GitHub. Para obter mais informações sobre ligações de serviço, veja Gerir ligações de serviço.


repositoryName - Repositório
string. Obrigatório. Valor predefinido: $(Build.Repository.Name).

Especifica o nome do repositório do GitHub onde irá criar, editar ou eliminar a versão do GitHub.


action - Ação
string. Obrigatório. Valores permitidos: create, , editdelete. Valor predefinido: create.

Especifica o tipo de operação de lançamento a executar. Esta tarefa pode criar, editar ou eliminar uma versão do GitHub.


target - Destino
string. Necessário quando action = create || action = edit. Valor predefinido: $(Build.SourceVersion).

Especifica a SHA de consolidação que pretende utilizar para criar a versão do GitHub, por exemplo 48b11d8d6e92a22e3e9563a3f643699c16fd6e27. Também pode utilizar uma variável, como $(myCommitSHA), neste campo.


tagSource - Origem da etiqueta
string. Necessário quando action = create. Valores permitidos: auto (etiqueta Git), manual (Etiqueta especificada pelo utilizador). Valor predefinido: auto.

Especifica a etiqueta que pretende utilizar para a criação da versão. A auto opção (etiqueta Git) utiliza automaticamente a etiqueta associada à consolidação do Git. Utilize a opção manual (Etiqueta especificada pelo utilizador) para fornecer manualmente uma etiqueta.


tagPattern - Padrão de Etiqueta
string. Opcional. Utilize quando tagSource = auto.

Especifica o padrão de etiqueta git com regex, por exemplo release-v1.*. A versão do GitHub será criada apenas para consolidações que tenham etiquetas Git correspondentes.


tag - Etiqueta
string. Necessário quando action = edit || action = delete || tagSource = manual.

Especifica a etiqueta que pretende utilizar quando cria, edita ou elimina uma versão. Também pode utilizar uma variável, como $(myTagName), neste campo.


title - Título da versão
string. Opcional. Utilize quando action = create || action = edit.

Especifica o título da versão do GitHub. Se ficar vazia, a etiqueta será utilizada como o título da versão.


releaseNotesSource - Origem das notas de versão
string. Opcional. Utilize quando action = create || action = edit. Valores permitidos: file (Ficheiro de notas de versão), input (Notas de versão inline). Valor predefinido: file.

Especifica a descrição da versão do GitHub. Utilize a opção file (Ficheiro de notas de versão) para utilizar conteúdos de ficheiros como notas de versão. Utilize a opção input (Notas de versão inline) para introduzir manualmente notas de versão.


releaseNotesFile - Caminho do ficheiro das notas de versão
string. Opcional. Utilize quando releaseNotesSource = file.

Especifica o ficheiro que contém as notas de versão.


releaseNotes - Notas de versão
string. Opcional. Utilize quando releaseNotesSource = input.

Especifica as notas de versão. O Markdown é suportado.


assets - Recursos
string. Opcional. Utilize quando action = create || action = edit. Valor predefinido: $(Build.ArtifactStagingDirectory)/*.

Especifica os ficheiros que pretende carregar como recursos da versão. Pode utilizar carateres universais para especificar vários ficheiros. Por exemplo, utilize $(Build.ArtifactStagingDirectory)/*.zip para pipelines de compilação ou utilize $(System.DefaultWorkingDirectory)/*.zip para pipelines de versão.

Também pode especificar múltiplos padrões, um por linha. Por predefinição, todos os ficheiros no $(Build.ArtifactStagingDirectory) diretório serão carregados. Para obter mais informações sobre a lista de variáveis predefinidas que estão disponíveis, veja variáveis de compilação e variáveis de versão.


assetUploadMode - Modo de carregamento de recursos
string. Opcional. Utilize quando action = edit. Valores permitidos: delete (Eliminar recursos de exisitação), replace (Substituir recursos existentes). Valor predefinido: delete.

Especifica o modo de carregamento de recursos que pretende utilizar. Utilize a opção delete (Eliminar recursos existentes) para eliminar primeiro todos os recursos existentes na versão e, em seguida, carregar todos os recursos. Utilize a opção replace (Substituir recursos existentes) para substituir quaisquer recursos que tenham o mesmo nome.


isDraft - Versão de rascunho
boolean. Opcional. Utilize quando action = create || action = edit. Valor predefinido: false.

Indica se pretende guardar a versão como um rascunho (não publicado). Se false, a versão será publicada.


isPreRelease - Pré-lançamento
boolean. Opcional. Utilize quando action = create || action = edit. Valor predefinido: false.

Indica se pretende marcar a versão como uma pré-versão.


addChangeLog - Adicionar caixa de alterações
boolean. Opcional. Utilize quando action = create || action = edit. Valor predefinido: true.

Especifica se pretende incluir um registo de alterações. Se definido como true, será gerada e anexada às notas de versão uma lista de alterações (consolidações e problemas) entre a versão atual e a última versão publicada.


changeLogCompareToRelease - Comparar com
string. Necessário quando addChangeLog = true. Valores permitidos: lastFullRelease (Última versão completa), lastNonDraftRelease (Última versão não rascunho), lastNonDraftReleaseByTag (Última versão sem rascunho por etiqueta). Valor predefinido: lastFullRelease.

Indica com que versão comparar para gerar o registo de alterações:

  • lastFullRelease (Última versão completa): compara a versão atual com a versão não rascunho mais recente que não está marcada como pré-lançamento.
  • lastNonDraftRelease (Última versão não rascunho): compara a versão atual com a versão não rascunho mais recente.
  • lastNonDraftReleaseByTag (Última versão não rascunho por etiqueta): compara a versão atual com a última versão não rascunho correspondente à etiqueta especificada. Também pode especificar um regex em vez de uma etiqueta exata.

changeLogCompareToReleaseTag - Etiqueta de Versão
string. Necessário quando changeLogCompareToRelease = lastNonDraftReleaseByTag && addChangeLog = true.

Especifica o regex para a etiqueta de versão. Será utilizada uma versão correspondente a esta etiqueta como base para a computação do registo de alterações.


changeLogType - Tipo de registo de alterações
string. Necessário quando addChangeLog = true. Valores permitidos: commitBased (Baseado em consolidação) issueBased (Baseado em problemas). Valor predefinido: commitBased.

Especifica o tipo de registo de alterações. Um registo de alterações pode ser baseado em consolidação ou baseado em problemas. Um registo de alterações baseado em consolidação lista todas as consolidações incluídas numa versão. Um registo de alterações baseado em problemas lista todos os problemas ou pedidos Pull (PRs) incluídos na versão.


changeLogLabels - Categorias
string. Opcional. Utilize quando changeLogType = issueBased && addChangeLog = true. Valor predefinido: [{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }].

Categoriza as alterações com base na etiqueta associada ao problema ou pr. Para uma etiqueta, pode mencionar o nome a apresentar para a categoria e o estado do problema. Exemplos de etiquetas incluem: "[{ "label" : "bug", "displayName" : "Bugs", "state" : "closed" }]". Nos casos em que uma alteração tem várias etiquetas, a primeira etiqueta especificada tem prioridade. Deixe este campo vazio para ver uma lista simples de problemas ou PRs.


Opções de controlo de tarefas

Todas as tarefas têm opções de controlo para além das entradas de tarefas. Para obter mais informações, veja Opções de controlo e propriedades de tarefas comuns.

Variáveis de saída

Nenhum.

Observações

Existe uma versão mais recente desta tarefa disponível em GitHubRelease@1.

Requisitos

Requisito Description
Tipos de pipeline YAML, Compilação clássica, Versão clássica
É executado em Agent, DeploymentGroup
Exigências Nenhuma
Capacidades Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes na tarefa.
Restrições de comandos Qualquer
Variáveis de definição Qualquer
Versão do agente 2.0.0 ou superior
Categoria da tarefa Utilitário