Skip to content

Commit 9d35c61

Browse files
authored
ci: adding missing requirements for generating legacy ckpt (#19353)
1 parent 1a59097 commit 9d35c61

File tree

4 files changed

+28
-21
lines changed

4 files changed

+28
-21
lines changed

.github/workflows/_legacy-checkpoints.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ on:
4242
type: boolean
4343

4444
env:
45-
legacy_dir: "tests/legacy"
45+
LEGACY_FOLDER: "tests/legacy"
4646
TORCH_URL: "https://download.pytorch.org/whl/cpu/torch_stable.html"
4747

4848
defaults:
@@ -91,11 +91,11 @@ jobs:
9191
run: python -c "import pytorch_lightning as pl; print(f'pl-version={pl.__version__}')" >> $GITHUB_OUTPUT || echo pl-version='' >> $GITHUB_OUTPUT
9292

9393
- name: Generate checkpoints
94-
working-directory: ${{ env.legacy_dir }}
94+
working-directory: ${{ env.LEGACY_FOLDER }}
9595
run: bash generate_checkpoints.sh ${{ inputs.pl_version }}
9696
- name: Rename local to actual version
9797
if: inputs.upload_local
98-
working-directory: ${{ env.legacy_dir }}
98+
working-directory: ${{ env.LEGACY_FOLDER }}
9999
run: mv checkpoints/local checkpoints/${{ steps.decide-version.outputs.pl-version }}
100100

101101
- name: "Determine: Keep artifact & DryRun"
@@ -107,12 +107,12 @@ jobs:
107107
uses: actions/upload-artifact@v3
108108
with:
109109
name: checkpoints-${{ github.sha }}
110-
path: ${{ env.legacy_dir }}/checkpoints/
110+
path: ${{ env.LEGACY_FOLDER }}/checkpoints/
111111
retention-days: ${{ env.KEEP_DAYS }}
112112

113113
- run: pip install -r requirements/ci.txt
114114
- name: Upload checkpoints to S3
115-
working-directory: ${{ env.legacy_dir }}
115+
working-directory: ${{ env.LEGACY_FOLDER }}
116116
env:
117117
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_PUB_ACCESS_KEY }}
118118
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_PUB_SECRET_KEY }}
@@ -134,7 +134,7 @@ jobs:
134134
ref: master
135135

136136
- name: Append a new version to legacy checkpoint list
137-
working-directory: ${{ env.legacy_dir }}
137+
working-directory: ${{ env.LEGACY_FOLDER }}
138138
run: echo ${PL_VERSION} >> back-compatible-versions.txt
139139

140140
- name: Create Pull Request

.github/workflows/ci-checkpoints.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Validate legacy ckpts
1+
name: Generate legacy ckpts
22

33
on:
44
push:
@@ -8,8 +8,10 @@ on:
88
types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped
99
paths:
1010
- ".github/workflows/ci-checkpoints.yml"
11-
- ".github/workflows/_legacy-checkpoints.yml.yml"
11+
- ".github/workflows/_legacy-checkpoints.yml"
1212
- "requirements/ci.txt"
13+
- "requirements/pytorch/*.txt"
14+
- "tests/legacy/*"
1315

1416
jobs:
1517
try-legacy-checkpoints:

tests/legacy/generate_checkpoints.sh

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,12 @@
66
# bash generate_checkpoints.sh
77
set -e
88

9-
LEGACY_PATH=$(cd $(dirname $0); pwd -P)
10-
ENV_PATH=$LEGACY_PATH/vEnv
11-
export PYTHONPATH=$(dirname $LEGACY_PATH) # for `import tests_pytorch`
12-
printf "LEGACY_PATH: $LEGACY_PATH"
9+
LEGACY_FOLDER=$(cd $(dirname $0); pwd -P)
10+
printf "LEGACY_FOLDER: $LEGACY_FOLDER"
11+
TESTS_FOLDER=$(dirname $LEGACY_FOLDER)
12+
ENV_PATH=$LEGACY_FOLDER/vEnv
1313
printf "ENV_PATH: $ENV_PATH"
14+
export PYTHONPATH=$TESTS_FOLDER # for `import tests_pytorch`
1415
printf "PYTHONPATH: $PYTHONPATH"
1516
rm -rf $ENV_PATH
1617

@@ -19,11 +20,11 @@ function create_and_save_checkpoint {
1920
python -m pip --version
2021
python -m pip list
2122

22-
python $LEGACY_PATH/simple_classif_training.py $pl_ver
23+
python $LEGACY_FOLDER/simple_classif_training.py $pl_ver
2324

24-
cp $LEGACY_PATH/simple_classif_training.py $LEGACY_PATH/checkpoints/$pl_ver
25-
mv $LEGACY_PATH/checkpoints/$pl_ver/lightning_logs/version_0/checkpoints/*.ckpt $LEGACY_PATH/checkpoints/$pl_ver/
26-
rm -rf $LEGACY_PATH/checkpoints/$pl_ver/lightning_logs
25+
cp $LEGACY_FOLDER/simple_classif_training.py $LEGACY_FOLDER/checkpoints/$pl_ver
26+
mv $LEGACY_FOLDER/checkpoints/$pl_ver/lightning_logs/version_0/checkpoints/*.ckpt $LEGACY_FOLDER/checkpoints/$pl_ver/
27+
rm -rf $LEGACY_FOLDER/checkpoints/$pl_ver/lightning_logs
2728
}
2829

2930
# iterate over all arguments assuming that each argument is version
@@ -35,9 +36,12 @@ do
3536
python -m venv $ENV_PATH
3637
source $ENV_PATH/bin/activate
3738

38-
python -m pip install "pytorch_lightning==$pl_ver" -r $LEGACY_PATH/requirements.txt -f https://download.pytorch.org/whl/cpu/torch_stable.html
39+
python -m pip install "pytorch_lightning==$pl_ver" \
40+
-r $LEGACY_FOLDER/requirements.txt \
41+
-r "$(dirname $TESTS_FOLDER)/requirements/pytorch/test.txt" \
42+
-f https://download.pytorch.org/whl/cpu/torch_stable.html
3943

40-
rm -rf $LEGACY_PATH/checkpoints/$pl_ver
44+
rm -rf $LEGACY_FOLDER/checkpoints/$pl_ver
4145
create_and_save_checkpoint
4246

4347
deactivate
@@ -48,7 +52,10 @@ done
4852
if [[ -z "$@" ]]; then
4953
printf "\n\n processing local version\n"
5054

51-
python -m pip install -r $LEGACY_PATH/requirements.txt
55+
python -m pip install \
56+
-r $LEGACY_FOLDER/requirements.txt \
57+
-r "$(dirname $TESTS_FOLDER)/requirements/pytorch/test.txt" \
58+
-f https://download.pytorch.org/whl/cpu/torch_stable.html
5259
pl_ver="local"
5360
create_and_save_checkpoint
5461
fi

tests/legacy/requirements.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +0,0 @@
1-
torchmetrics # necessary because old PL versions don't have it as dependency
2-
scikit-learn

0 commit comments

Comments
 (0)