diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 000000000000..473b344d8a24 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,50 @@ +# This is a basic workflow to help you get started with Actions + +name: CI + +# Controls when the action will run. +on: + # Triggers the workflow on push or pull request events but only for the master branch + push: + branches: [ master ] + pull_request: + branches: [ master ] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: self-hosted + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + + # Runs a single command using the runners shell + - name: environment + run: | + nvidia-smi + echo $GITHUB_WORKSPACE + pwd + + # Runs a set of commands using the runners shell + - name: Install deepspeed + run: | + pip install .[dev] + ds_report + + - name: Formatting checks + run: | + pip install pre-commit + pre-commit run --all-files + + # Runs a set of commands using the runners shell + - name: Run unit tests + run: | + if [[ -d ./torch-extensions ]]; then rm -rf ./torch-extensions; fi + TORCH_EXTENSIONS_DIR=./torch-extensions pytest --durations=0 --forked --verbose -x tests/unit/