Skip to content

xccl-p2p

xccl-p2p #3

name: Nightly Upload to s3
on:
schedule:
# Choose a random time near midnight PST because it may be delayed if there are high loads
- cron: 37 7 * * *
pull_request:
paths:
- 'tools/stats/upload_external_contrib_stats.py'
- '.github/workflows/nightly-s3-uploads.yml'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' }}
cancel-in-progress: true
jobs:
upload-stats-to-s3:
if: github.repository_owner == 'pytorch'
runs-on: ubuntu-22.04
environment: upload-stats
steps:
- name: Checkout PyTorch
uses: pytorch/pytorch/.github/actions/checkout-pytorch@main
with:
fetch-depth: 1
submodules: false
- uses: actions/setup-python@v4
with:
python-version: '3.11'
cache: pip
- run: |
pip3 install requests==2.32.2 boto3==1.35.42
- name: Upload external contribution stats
uses: nick-fields/retry@v3.0.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
with:
timeout_minutes: 10
max_attempts: 10
retry_wait_seconds: 90
command: |
echo "Uploading external contribution stats for 10 days starting on" "$(date -d '10 days ago' '+%Y-%m-%d')"
python3 -m tools.stats.upload_external_contrib_stats --startDate "$(date -d '10 days ago' '+%Y-%m-%d')" --length 10