tools/trigger_internal_ci.md
:warning: This is only useful to NVIDIANs.
Pushes the current branch to the internal GitLab remote and triggers a CI pipeline — without touching the GitLab UI.
1. Add the internal GitLab as a git remote (skip if you already have one configured):
git remote add gitlab git@<gitlab-hostname>:ADLR/Megatron-LM.git
To check existing remotes: git remote -v
The name of the origin will be required later!
2. Obtain a personal access token:
api scope.glpat-).export GITLAB_TOKEN=glpat-<your-token>
Tip: Store this in your .env or .bashrc file
python -m pip install python-gitlab
python tools/trigger_internal_ci.py \
--gitlab-origin gitlab \
[--access-token glpat-<your-token>] \
[--functional-test-scope mr] \
[--functional-test-repeat 5] \
[--functional-test-cases all] \
[--dry-run]
| Argument | Default | Description |
|---|---|---|
--gitlab-origin | (required) | Git remote name for the internal GitLab |
--access-token | $GITLAB_TOKEN | Personal access token with api scope |
--functional-test-scope | mr | FUNCTIONAL_TEST_SCOPE pipeline variable |
--functional-test-repeat | 5 | FUNCTIONAL_TEST_REPEAT pipeline variable |
--functional-test-cases | all | FUNCTIONAL_TEST_CASES pipeline variable |
--dry-run | off | Print what would happen without pushing or triggering |
# Dry run — no push, no trigger
python tools/trigger_internal_ci.py --gitlab-origin gitlab --dry-run
# Real run — uses token from environment
python tools/trigger_internal_ci.py --gitlab-origin gitlab
Current branch: my-feature-branch
Everything up-to-date
Triggering pipeline on https://<gitlab-hostname> project 19378 @ pull-request/my-feature-branch
Pipeline triggered: https://<gitlab-hostname>/<namespace>/<project>/-/pipelines/123456
pull-request/<branch>.