

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Defina os nomes dos artefatos no momento da compilação usando versionamento semântico
<a name="sample-buildspec-artifact-naming"></a>

 Este exemplo contém exemplos de arquivos buildspec que demonstram como especificar o nome de um artefato que é criado no momento da compilação. Um nome especificado em um arquivo buildspec pode incorporar comandos Shell e variáveis de ambiente para torná-lo exclusivo. Um nome especificado em um arquivo buildspec substitui um nome inserido no console quando você cria o projeto.

 Se você compilar várias vezes, o uso do nome de um artefato especificado no arquivo buildspec poderá garantir que os nomes dos arquivos de artefato de saída sejam exclusivos. Por exemplo, você pode usar uma data e um time stamp que é inserido no nome de um artefato no momento da compilação. 

Se você quiser substituir o nome do artefato que inseriu no console por um nome no arquivo buildspec, faça o seguinte:

1.  Defina o projeto de compilação para substituir o nome do artefato por um nome no arquivo buildspec. 
   +  Se você usar o console do para criar seu projeto de compilação, selecione **Enable semantic versioning (Habilitar versionamento semântico)**. Para obter mais informações, consulte [Criar um projeto de compilação (console)](create-project.md#create-project-console). 
   +  Se você usar a AWS CLI, defina o `overrideArtifactName` como true no arquivo em formato JSON transmitido para `create-project`. Para obter mais informações, consulte [Crie um projeto de compilação (AWS CLI)](create-project.md#create-project-cli). 
   +  Se você usar a API do AWS CodeBuild, defina o sinalizador `overrideArtifactName` no objeto `ProjectArtifacts` quando um projeto for criado ou atualizado ou quando uma compilação for iniciada. 

1.  Especifique um nome no arquivo buildspec. Use os seguintes exemplos de arquivos buildspec como um guia. 

 Este exemplo do Linux mostra como especificar um artefato que inclui a data em que a compilação foi criada: 

```
version: 0.2         
phases:
  build:
    commands:
      - rspec HelloWorld_spec.rb
artifacts:
  files:
    - '**/*'
  name: myname-$(date +%Y-%m-%d)
```

 Este exemplo do Linux mostra como especificar o nome de um artefato que usa uma variável de ambiente do CodeBuild. Para obter mais informações, consulte [Variáveis de ambiente em ambientes de compilação](build-env-ref-env-vars.md). 

```
version: 0.2         
phases:
  build:
    commands:
      - rspec HelloWorld_spec.rb
artifacts:
  files:
    - '**/*'
  name: myname-$AWS_REGION
```

 Este exemplo do Windows mostra como especificar um artefato que inclui a data e a hora em que a compilação foi criada: 

```
version: 0.2
env:
  variables:
    TEST_ENV_VARIABLE: myArtifactName
phases:
  build:
    commands:
      - cd samples/helloworld
      - dotnet restore
      - dotnet run
artifacts:
  files:
    - '**/*'
  name: $Env:TEST_ENV_VARIABLE-$(Get-Date -UFormat "%Y%m%d-%H%M%S")
```

 Este exemplo do Windows mostra como especificar o nome de um artefato que usa uma variável declarada no arquivo buildspec e uma variável de ambiente do CodeBuild. Para obter mais informações, consulte [Variáveis de ambiente em ambientes de compilação](build-env-ref-env-vars.md). 

```
version: 0.2
env:
  variables:
    TEST_ENV_VARIABLE: myArtifactName
phases:
  build:
    commands:
      - cd samples/helloworld
      - dotnet restore
      - dotnet run
artifacts:
  files:
    - '**/*'
  name: $Env:TEST_ENV_VARIABLE-$Env:AWS_REGION
```

 Para obter mais informações, consulte [Referência de especificação de construção para CodeBuild](build-spec-ref.md). 