The PyTorch TestInfra project is collection of infrastructure components that are supporting the PyTorch CI/CD system. It also contains various PyTorch development tools like linters.
Clone the repository:
$ git clone --recursive https://github.com/pytorch/test-infra
βββ aws # Infra running in AWS
β βββ lambda
β βββ websites # Several websites supported by TestInfra
β βββ download.pytorch.org
β βββ metrics.pytorch.org
βββ setup-ssh # SSH access setup to CI workers
βββ stats # CI related stats committed automatically by a bot
βββ terraform-aws-github-runner # Terraform modules and templates used in CI
βββ tools # Tools and scripts
| βββ clang-tidy-checks
| βββ scripts
βββ torchci # Code for hud.pytorch.org and our pytorch bots which run there
βββ pages
-
Install yarn: E.g. for macs:
brew install yarn
-
cd torchci
and install dependencies withyarn install
-
Setup your environment variables
a. Copy
torchci/.env.example
totorchci/.env.local
to create a local copy of your environmnet variables. This will NOT be checked into gitb. For every environment setting defined in there, copy over the corresponding value from Vercel (this requires access to our Vercel deployment)
-
From
torchci
runyarn dev
to start the dev server. The local endpoint will be printed on the console, it'll most likely behttp://localhost:3000
. You can find more useful yarn commands inpackage.json
under thescripts
section.
We use actionlint
to verify that the GitHub Actions workflows in .github/workflows
are correct. To run it locally:
-
Install actionlint
go install github.com/rhysd/actionlint/cmd/actionlint@7040327ca40aefd92888871131adc30c7d9c1b6d
-
Run actionlint
# The executable will be in ~/go/bin, so make sure that's on your PATH # actionlint automatically detects and uses shellcheck, so if it's not in # your PATH you will get different results than in CI actionlint
See the CONTRIBUTING
file for how to help out.
PyTorch TestInfra is BSD licensed, as found in the LICENSE
file.