This is simple program that fetches and searches all Optimizely's Github repositories for a specific string.
$ go get github.com/optimizely/fetch-all-github-repos
$fetch-all-github-repos 0X123ThisIsAGithubAAccessKey
Or
$ time ./fetch-all-github-repos 0X123ThisIsAGithubAAccessKey | tee output.txt
repo number: 0 - [email protected]:optimizely/optimizely.git
git clone --depth 1 [email protected]:optimizely/optimizely.git tmpdir
ag eslint-scope tmpdir
tmpdir/src/www/frontend/yarn.lock:860: eslint-scope "~3.7.1"
tmpdir/src/www/frontend/yarn.lock:3870:eslint-scope@^3.7.1, eslint-scope@~3.7.1:
tmpdir/src/www/frontend/yarn.lock:3872: resolved "https://optimizely.jfrog.io/optimizely/api/npm/npm/eslint-scope/-/eslint-scope-3.7.1.tgz?dl=https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8"
tmpdir/src/www/frontend/yarn.lock:3892: eslint-scope "^3.7.1"
tmpdir/src/www/frontend/yarn.lock:11571: eslint-scope "^3.7.1"
ag eslint-config-eslint tmpdir
rm -rf tmpdir
repo number: 1 - [email protected]:optimizely/blog.optimizely.git
...
rm -rf tmpdir
repo number: 821 - [email protected]:optimizely/optimizely-ktlint.git
git clone --depth 1 [email protected]:optimizely/optimizely-ktlint.git tmpdir
ag eslint-scope tmpdir
ag eslint-config-eslint tmpdir
rm -rf tmpdir
./fetch-all-github-repos 135.25s user 239.15s system 31% cpu 19:55.51 total
tee output.txt 0.01s user 0.16s system 0% cpu 19:55.51 total
Note: If some string generates a lot of output lines can be restricted to 200 chars via
cut -c -200 output.txt > shortened-list.txt
- Ola
The MIT License (MIT).