Skip to content

Commit

Permalink
feat: add mirroring doc for bitbucket cloud (#294)
Browse files Browse the repository at this point in the history
  • Loading branch information
IlanTSnyk authored Feb 16, 2022
1 parent d0581b4 commit 72a73be
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 0 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@ The logs can be explored using [Bunyan CLI](http://trentm.com/node-bunyan/bunyan
- [Generating import data](docs/import-data.md)
- [Mirroring Github.com/Github Enterprise organizations & repos in Snyk](docs/mirror-github.md)
- [Mirroring Gitlab organizations & repos in Snyk](docs/mirror-gitlab.md)
- [Mirroring Bitbucket Server organizations & repos in Snyk](docs/mirror-bitbucket-server.md)
- [Mirroring Bitbucket Cloud organizations & repos in Snyk](docs/mirror-bitbucket-cloud.md)

- [Kicking off an import](docs/import.md)
- [Contributing](.github/CONTRIBUTING.md)
Expand Down
18 changes: 18 additions & 0 deletions docs/mirror-bitbucket-cloud.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Mirroring Bitbucket Cloud organizations and repos in Snyk
In order to import the entirety of Bitbucket Cloud repos into Snyk you can use the available utils to make it possible in 4 commands.
You will need to configure Bitbucket Cloud username and password and Snyk token as environment variable to proceed.
Please refer to individual documentation pages for more detailed info, however the general steps are:

1. `export BITBUCKET_CLOUD_USERNAME=***`, `export BITBUCKET_CLOUD_PASSWORD=***` and `export SNYK_TOKEN=***`
2. Generate organization data e.g. `snyk-api-import orgs:data --source=bitbucket-cloud --groupId=<snyk_group_id>` [Full instructions](./orgs.md)
3. Create organizations in Snyk `snyk-api-import orgs:create --file=orgs.json` [Full instructions](./orgs.md) will create a `snyk-created-orgs.json` file with Snyk organization ids and integration ids that are needed for import.
4. Generate import data `snyk-api-import import:data --orgsData=snyk-created-orgs.json --source=bitbucket-cloud --integrationType=bitbucket-cloud` [Full instructions](./import-data.md)
5. Run import `DEBUG=*snyk* snyk-api-import import`[Full instructions](./import.md)

## Re-importing new repos & orgs only while Mirroring
Once initial import is complete you may want to periodically check for new repos and make sure they are added into Snyk. To do this a similar flow to what is described above with a few small changes can be used:
1. `export BITBUCKET_CLOUD_USERNAME=***`, `export BITBUCKET_CLOUD_PASSWORD=***` and `export SNYK_TOKEN=***`
2. Generate organization data in Snyk and skip any that do not have any repos via `--skipEmptyOrg` `snyk-api-import orgs:data --source=bitbucket-cloud --groupId=<snyk_group_id> --skipEmptyOrg` [Full instructions](./orgs.md)
3. Create organizations in Snyk and this time skip any that have been created already with `--noDuplicateNames` parameter `snyk-api-import orgs:create --file=orgs.json --noDuplicateNames` [Full instructions](./orgs.md) will create a `snyk-created-orgs.json` file with Snyk organization ids and integration ids that are needed for import.
4. Generate import data `snyk-api-import import:data --orgsData=snyk-created-orgs.json --source=bitbucket-cloud --integrationType=bitbucket-cloud` [Full instructions](./import-data.md)
5. Run import `DEBUG=*snyk* snyk-api-import import`[Full instructions](./import.md)

0 comments on commit 72a73be

Please sign in to comment.