Maik3345 / azure-devops-vtex-extension

A collection of utilities for VTEX IO CI/CD
2 stars 0 forks source link

feat: ✨ create the release and deploy task to use in pipeline (#9) #9

Closed Maik3345 closed 4 months ago

Maik3345 commented 4 months ago

What problem is this solving?

Se crearon las tareas

GitRelease --> Tarea que crea el release usando el estandar de conventional commits con la cli projex VtexDeploy --> Se emplea en el flujo normal de azure devops para hacer el deploy la aplicación en vtex io usando vtex deploy

Screenshots or example usage:

image

stages:
  - stage: "Publish"
    displayName: "Publish"
    condition: succeeded()
    jobs:
      - deployment:
        environment: publish
        displayName: "Make the publish of the app"
        strategy:
          runOnce:
            deploy:
              steps:
                - checkout: self
                  persistCredentials: true
                - task: VtexPublish@0
                  displayName: "TASK: publish"
                  inputs:
                    account: $(VTEX_ACCOUNT_NAME_PROD)
                    email: $(VTEX_EMAIL_PROD)
                    apiKey: $(VTEX_API_KEY_PROD)
                    apiToken: $(VTEX_API_TOKEN_PROD)
                    forcePublish: true

  - stage: "Deploy"
    displayName: "Deploy"
    condition: succeeded()
    jobs:
      - deployment:
        environment: prod
        displayName: "Deploy and release"
        strategy:
          runOnce:
            deploy:
              steps:
                - checkout: self
                  persistCredentials: true
                - task: VtexDeploy@0
                  displayName: "TASK: deploy"
                  inputs:
                    account: $(VTEX_ACCOUNT_NAME_PROD)
                    email: $(VTEX_EMAIL_PROD)
                    apiKey: $(VTEX_API_KEY_PROD)
                    apiToken: $(VTEX_API_TOKEN_PROD)
                - task: GitRelease@0
                  displayName: "TASK: release"

Con esta implementación se puede lograr hacer primero el proceso de publicación de la aplicación y luego el proceso de deploy donde se realiza el deploy de la app y por último el release

Nota: la tarea GitRelease se puede emplear en cualquier proyecto ya que no tiene dependencia con vtex para el release. se puede manejar el versionamiento con el package.json y el changelog.md

How does this PR make you feel? :link: