From 02f05a789d436c736ddfca72f30cd19799569d6d Mon Sep 17 00:00:00 2001 From: Michael Duong Date: Wed, 13 Sep 2023 22:36:07 +0100 Subject: [PATCH] enforce label --- .github/workflows/MLPipelinePullRequest.yml | 115 +++++++++++--------- 1 file changed, 63 insertions(+), 52 deletions(-) diff --git a/.github/workflows/MLPipelinePullRequest.yml b/.github/workflows/MLPipelinePullRequest.yml index 614a984..ef9ecde 100644 --- a/.github/workflows/MLPipelinePullRequest.yml +++ b/.github/workflows/MLPipelinePullRequest.yml @@ -11,72 +11,83 @@ permissions: write-all jobs: - Verify-Model: + Enforce-label: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: Install packages to retrieve artifacts - env: - AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} - run: | - pip install --upgrade pip - pip install -r modules/ml-pipeline/src/pipeline/src/requirements/version_control/requirements.txt + - uses: yogevbd/enforce-label-action@2.1.0 + with: + REQUIRED_LABELS_ANY: "major,minorr,patch" + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label ['major','minor','patch']" + BANNED_LABELS: "banned" - - name: Retrieve artifacts (dvc.lock) - env: - AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} - run: | - cd modules/ml-pipeline/src/pipeline/src - dvc pull -r experiments + # Verify-Model: - - name: Build Prediction docker Image - run: | - cd modules/ml-pipeline/src/pipeline/ - docker build . --file Prediction.Dockerfile --tag prediction_test + # runs-on: ubuntu-latest - - name: Run Prediction docker container - run: | - docker run prediction_test + # steps: + # - uses: actions/checkout@v3 + # - name: Install packages to retrieve artifacts + # env: + # AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} + # AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} + # run: | + # pip install --upgrade pip + # pip install -r modules/ml-pipeline/src/pipeline/src/requirements/version_control/requirements.txt - Trigger-CML: + # - name: Retrieve artifacts (dvc.lock) + # env: + # AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} + # AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} + # run: | + # cd modules/ml-pipeline/src/pipeline/src + # dvc pull -r experiments - runs-on: ubuntu-latest + # - name: Build Prediction docker Image + # run: | + # cd modules/ml-pipeline/src/pipeline/ + # docker build . --file Prediction.Dockerfile --tag prediction_test - steps: - - uses: actions/checkout@v3 - - name: Install packages to retrieve artifacts - run: | - pip install --upgrade pip - pip install -r modules/ml-pipeline/src/pipeline/src/requirements/version_control/requirements.txt + # - name: Run Prediction docker container + # run: | + # docker run prediction_test - - name: Retrieve artifacts (dvc.lock) - env: - AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} - run: | - cd modules/ml-pipeline/src/pipeline/src - dvc pull -r experiments + # Trigger-CML: - - uses: actions/setup-python@v4 - - uses: iterative/setup-cml@v1 - - name: Generate report - env: - AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} - REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - cd modules/ml-pipeline/src/pipeline/src - echo "## Model metrics" > report.md + # runs-on: ubuntu-latest - # Compare metrics to master - git fetch --depth=1 origin master:master - dvc metrics diff --md --all master >> report.md + # steps: + # - uses: actions/checkout@v3 + # - name: Install packages to retrieve artifacts + # run: | + # pip install --upgrade pip + # pip install -r modules/ml-pipeline/src/pipeline/src/requirements/version_control/requirements.txt - cml comment create report.md + # - name: Retrieve artifacts (dvc.lock) + # env: + # AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} + # AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} + # run: | + # cd modules/ml-pipeline/src/pipeline/src + # dvc pull -r experiments + + # - uses: actions/setup-python@v4 + # - uses: iterative/setup-cml@v1 + # - name: Generate report + # env: + # AWS_ACCESS_KEY_ID: ${{ secrets.ROBOT_AWS_ACCESS_KEY_ID }} + # AWS_SECRET_ACCESS_KEY: ${{ secrets.ROBOT_AWS_SECRET_ACCESS_KEY }} + # REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # run: | + # cd modules/ml-pipeline/src/pipeline/src + # echo "## Model metrics" > report.md + + # # Compare metrics to master + # git fetch --depth=1 origin master:master + # dvc metrics diff --md --all master >> report.md + + # cml comment create report.md # # echo "## Residuals plot from model" >> report.md # # metrics_location=$(find . -maxdepth 10 -name "residuals.png")