CircleCI determines the run order for jobs with workflows. This is also used to determine concurrent, sequential, scheduled, or manual runs. The equivalent function in GitLab CI/CD is called stages.
This table compares CircleCI Workflows to GitLab Stages
Features | CircleCI Workflows | GitLab Stages |
---|---|---|
Configuration File |
config.yml | gitlab-ci.yml |
Run Job Independently | Yes | Yes |
Troubleshoot Jobs Independently | Yes | Yes |
Fan-Out/Fan-In Run a common job first, then run multiple concurrent jobs (Fan-Out), then run another command job (Fan-In) |
Yes | Yes |
Trigger on run on manual Approval | Yes | Yes |
Schedule runs | Yes | Yes |
Use a context to share environment variables. | Yes | Yes |
Execute jobs at branch level | Yes | Yes |
Execute workflows on a Git tag | Yes | Yen |
Cache files in a container filesystem to share among jobs | Yes | Yes |
Rerun a failed job | Yes | Yes |
Use API with Workflows | Yes | Yes |
Auto-cancel feature with Workflows | Yes |
Yes |
Launch jobs on multiple environments at one time? (example Linux and Mac) | Yes |
Yes |
Split .yml final into different files | No |
Yes |