Mirroring GitLab organizations and repos in Snyk
You can use four commands in the available utils to import the entirety of GitLab repos into Snyk. You must configure both the GitLab token and Snyk token as environment variables to proceed.
General steps to import GitLab repos
Refer to individual documentation pages for detailed information. The general steps are as follows:
export GITLAB_TOKEN=***andexport SNYK_TOKEN=***Generate organization data, for example,
snyk-api-import orgs:data --source=gitlab --groupId=<snyk_group_id>Full instructions: Creating organizations in SnykCreate organizations in Snyk:
snyk-api-import orgs:create --file=orgs.jsonBy following the full instructions on Creating organizations in Snyk you will create asnyk-created-orgs.jsonfile with Snyk organization ids and integration ids that are needed for import.Generate import data:
snyk-api-import import:data --orgsData=snyk-created-orgs.json --source=gitlab --integrationType=gitlabFull instructions: Creating import targets data for importRun import :
DEBUG=*snyk* snyk-api-import importFull instructions: Kicking off an import
Re-importing new repos and Orgs only while mirroring
Once initial import is complete you can periodically check for new repos and make sure they are added into Snyk by following these steps, which are similar to the preceding steps to import repos.
export GITLAB_TOKEN=***andexport SNYK_TOKEN=***Generate organization data in Snyk and skip any that do not have any repos by using
--skipEmptyOrgsnyk-api-import orgs:data --source=gitlab --groupId=<snyk_group_id> --skipEmptyOrgFull instructions: Creating organizations in SnykCreate organizations in Snyk and this time skip any that have been created already with
--noDuplicateNamesparametersnyk-api-import orgs:create --file=orgs.json --noDuplicateNamesBy following the full instructions on Creating organizations in Snyk you will create asnyk-created-orgs.jsonfile with Snyk organization ids and integration ids that are needed for import.Generate import data:
snyk-api-import import:data --orgsData=snyk-created-orgs.json --source=gitlab --integrationType=gitlabFull instructions: Creating import targets data for importOptional - Generate the previously imported log to skip all previously imported repos in a Group:
snyk-api-import-macos list:imported --integrationType=gitlab --groupId=<snyk_group_id>Full instructions: Kicking off an importRun import:
DEBUG=*snyk* snyk-api-import importFull instructions: Kicking off an import
Last updated
Was this helpful?

