i am trying to build and deploy two separate microservices (api and client) from a monorepo.
i added four environments: api-qa, client-qa, api-prod, and client-prod.
definitions:
steps:
- step: &build-api
name: build-api
condition:
changesets:
includePaths:
- "shared/**"
- "api/**"
script:
- echo build api
- step: &build-client
name: build-client
condition:
changesets:
includePaths:
- "shared/**"
- "api/src/entities/**"
- "client/**"
script:
- echo build client
- step: &deploy-api-qa
name: deploy-api-qa
deployment: api-qa
condition:
changesets:
includePaths:
- "shared/**"
- "api/**"
script:
- echo deploy api to qa
- step: &deploy-client-qa
name: deploy-client-qa
deployment: client-qa
condition:
changesets:
includePaths:
- "shared/**"
- "api/src/entities/**"
- "api/**"
script:
- echo deploy client to qa
- step: &deploy-api-prod
name: deploy-api-prod
deployment: api-prod
trigger: manual
condition:
changesets:
includePaths:
- "shared/**"
- "api/**"
script:
- echo deploy api to prod
- step: &deploy-client-prod
name: deploy-client-prod
deployment: client-prod
trigger: manual
condition:
changesets:
includePaths:
- "shared/**"
- "api/src/entities/**"
- "api/**"
script:
- echo deploy client to prod
pipelines:
default:
- step: *build-api
- step: *build-client
- step: *deploy-api-qa
- step: *deploy-client-qa
- parallel:
- step: *deploy-api-prod
- step: *deploy-client-prod
this *almost* works. i do end up with four different environments, however, the "promote" button acts weirdly. there's no promote button on api-qa and the promote button on client-qa wants to promote to api-prod.
what am i doing wrong here? thanks in advance.