Feature Proposal: Cross-Pipeline Manual Job Dependencies

Hi GitLab Community! :waving_hand:

I’d like to propose a new CI/CD feature that addresses a real limitation I’ve encountered in my projects.

My Problem

Currently, GitLab doesn’t provide an easy way to create dependencies between jobs in different pipelines.

Real scenario from my project:

  • Pipeline A runs my backend deployment with job deploy-backend
  • Pipeline B has a job integration-tests that should only run AFTER the backend is deployed
  • Currently, I have to manually watch Pipeline A, wait for it to finish, then manually trigger the job in Pipeline B

This becomes especially painful when coordinating multiple microservices deployments where each service has its own pipeline but they need to be orchestrated in a specific order.

What i Propose as Solution

Allow users to link jobs across pipelines through the UI:

  1. Go to Pipeline B where job integration-tests is waiting (manual job)
  2. Click on the job → Select “Link to external dependency”
  3. Choose Pipeline A → Select job deploy-backend
  4. Set condition: on_success, on_failure, or always
  5. Now integration-tests automatically becomes available to run once deploy-backend finishes

Key difference: You can set this up BEFORE Pipeline A finishes. No more watching and waiting!

Real Use Cases

  1. Microservices Orchestration

    • Service B deployment waits for Service A’s database migration
    • API gateway updates only after all backend services are deployed
  2. Multi-Environment Deployments

    • Production pipeline waits for staging validation to complete
    • Customer-specific deployments triggered after main release
  3. Cross-Project Dependencies

    • Frontend deployment waits for API deployment from another project
    • Mobile app release waits for backend API updates
  4. Scheduled Batch Processing

    • Data processing job waits for multiple data ingestion pipelines
    • Report generation after all data sources are updated

How I think it Would Work

  • UI Integration: Dropdown in manual jobs to link to other pipeline jobs
  • Visual Indicator: Shows linked dependencies across pipelines
  • Smart Triggers: Job automatically becomes “ready” when dependency completes
  • Notifications: Optional alerts when dependent job is ready to run
  • API Support: Ability to create these links via API for automation

Existing Workarounds (and why they’re not enough for me)

  • Pipeline triggers: Only work at pipeline level, not job level
  • Downstream pipelines: Can’t handle complex cross-project scenarios
  • Polling scripts: Require external automation and are error-prone
  • Manual coordination: Time-consuming and mistake-prone

So these are my Questions for the Community

  1. How often do you need to coordinate jobs across different pipelines?
  2. What’s your current workaround for this limitation?
  3. Would you prefer automatic triggering or manual Feature Proposal: Cross-Pipeline Manual Job Dependenciesconfirmation after dependency is met?
  4. Should this work across different projects or just within the same project?

Would this solve a problem for you? I’d love to hear about your use cases!

Tags: #ci-cd pipelines #feature-proposal #orchestration #multi-pipeline

1 Like

Better off raising an issue here: Issues · GitLab.org / GitLab · GitLab Dev’s don’t read forum posts for feature requests. They only work on issues.

ok, thanks,

i was just trying first to have insights and feedback from the idea.

2 Likes