This folder contains useful scripts and commands to update integrations in bulk.
GITHUB_TOKEN
: To query/update GitHub.GITHUB_USER
: For commits. Optional, if not present it will use the system configuration.GITHUB_EMAIL
: For commits. Optional, if not present it will use the system configuration.
To use SegmentDestinationsBot
, get the credentials from:
$ aws-okta exec prod-privileged -- chamber read -q destinations github_bot_(token|user|email)
Lists all the integrations repositories. Options:
--verbose
--searchMods=<string>
: GitHub search mods to query the repositories (is:private
,is:public
).
Lists all the integrations. Options:
--verbose
--monorepoPath=<string>
: Local path where the monorepo lives. Default to.
.
Lists all the updated integrations since the specified commit or refs/heads/master
.
Options:
--verbose
--monorepoPath=<string>
: Local path where the monorepo lives. Default to.
.--commit=<string>
: Commit or reference to compare with the current workspace. Default torefs/heads/master
.
Migrates the integration repo into the monorepo:
- Copies the integration code in the monorepo.
- Updates references in package.json for the integration.
- Commits the integration code.
- Updates the integration repo with a notice.
- Comments in all opened issues and pull requests and copies them to the monorepo as issues.
- Marks the repo as
migrated
.
Options:
--verbose
--integration=<name>
--monorepoPath=<string>
: Local path where the monorepo lives. Default to.
.--tmpPath=<string>
: Temporal folder. Default to/tmp/integrations
.
Archives the repository of the integration:
- Removes all webhooks.
- Archives the repository.
Options:
--verbose
--integration=<name>
--tmpPath=<string>
: Temporal folder. Default to/tmp/integrations
.
Moves the repository to the boneyard organization.
Options:
--verbose
--integration=<name>
--tmpPath=<string>
: Temporal folder. Default to/tmp/integrations
.
Install libgit2 v27 following this script. This is also required for the CI docker image. IMPORTANT: The following extensions need to be present for libgit2:
openssl
libhttp-parser-dev
We use SauceConnect to make a tunnel between localhost and SauceLabs infrastructure. To install it, check this script. This is also required for the CI docker image.