diff --git a/.github/actions/run-ux-tests/action.yml b/.github/actions/run-ux-tests/action.yml index 52a300e15d3..bc1308fb510 100644 --- a/.github/actions/run-ux-tests/action.yml +++ b/.github/actions/run-ux-tests/action.yml @@ -53,7 +53,7 @@ runs: using: composite steps: - name: Checkout metaflow - uses: actions/checkout@v4 + uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 with: repository: Netflix/metaflow ref: ${{ inputs.metaflow-ref }} @@ -67,7 +67,7 @@ runs: - name: Install Miniconda if: ${{ inputs.conda == 'true' }} - uses: conda-incubator/setup-miniconda@v3 + uses: conda-incubator/setup-miniconda@a89f5d49e7a95ca6cffbca8032777572e8d748d7 #v3.3.0 with: auto-activate-base: true activate-environment: "" @@ -139,7 +139,7 @@ runs: - name: Upload coverage artifact if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1 with: name: ${{ steps.coverage-name.outputs.name }} path: | @@ -165,7 +165,7 @@ runs: - name: Upload JUnit XML artifact if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1 with: name: ${{ steps.junit_name.outputs.name }} path: ${{ steps.junit_name.outputs.file }} @@ -173,7 +173,7 @@ runs: - name: Upload coverage to Codecov if: ${{ inputs.codecov-token != '' }} - uses: codecov/codecov-action@v5 + uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 #v6.0.0 with: token: ${{ inputs.codecov-token }} files: coverage.xml diff --git a/.github/workflows/ux-tests.yml b/.github/workflows/ux-tests.yml index c092480cbf4..922a2102d5a 100644 --- a/.github/workflows/ux-tests.yml +++ b/.github/workflows/ux-tests.yml @@ -26,18 +26,19 @@ on: jobs: unit-tests: name: "Unit Tests" - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v4 + - name: Checkout Metaflow + uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - name: Set up Python 3.9 - uses: actions/setup-python@v5 + uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 with: python-version: "3.9" - name: Cache pip packages - uses: actions/cache@v4 + uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4 with: path: ~/.cache/pip key: pip-py3.9-${{ hashFiles('setup.py', 'setup.cfg') }} @@ -64,7 +65,7 @@ jobs: - name: Upload coverage data if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: coverage-unit path: | @@ -75,7 +76,7 @@ jobs: - name: Upload test results if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: junit-unit path: junit-unit.xml @@ -84,7 +85,7 @@ jobs: - name: Publish test results if: always() continue-on-error: true - uses: dorny/test-reporter@d61b558e8df85cb60d09ca3e5b09653b4477cea7 # v1 + uses: dorny/test-reporter@9c68bf6253df71e8dc6d80e6fb9b223481fd5a33 # v3.0.0 with: name: "Test Results — Unit" path: junit-unit.xml @@ -118,10 +119,10 @@ jobs: memory: 6144 timeout: 900 - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - name: Free disk space uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1 @@ -135,12 +136,12 @@ jobs: swap-storage: false - name: Set up Python 3.9 - uses: actions/setup-python@v5 + uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 with: python-version: "3.9" - name: Cache pip packages - uses: actions/cache@v4 + uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4 with: path: ~/.cache/pip key: pip-py3.9-${{ hashFiles('setup.py', 'setup.cfg') }} @@ -152,7 +153,7 @@ jobs: pip install -e ".[dev]" - name: Set up minikube - uses: medyagh/setup-minikube@aba8d5ff1666d19b9549133e3b92e70d4fc52cb7 + uses: medyagh/setup-minikube@aba8d5ff1666d19b9549133e3b92e70d4fc52cb7 # v0.0.9 with: driver: docker cpus: 2 @@ -160,7 +161,7 @@ jobs: - name: Restore minikube image cache id: image-cache - uses: actions/cache/restore@v4 + uses: actions/cache/restore@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4 with: path: /tmp/minikube-image-cache key: minikube-images-${{ matrix.backend }}-${{ hashFiles('devtools/Tiltfile') }} @@ -171,7 +172,7 @@ jobs: run: devtools/ci/load-minikube-images.sh - name: Cache Helm repos and charts - uses: actions/cache@v4 + uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4 with: path: | ~/.cache/helm @@ -182,11 +183,11 @@ jobs: helm-charts- - name: Set up Helm - uses: azure/setup-helm@v4 + uses: azure/setup-helm@7202adf6945f8e895a057907ae5b106e9ed8eed6 # v5.0.0 - name: Cache Tilt binary id: tilt-cache - uses: actions/cache@v4 + uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4 with: path: /usr/local/bin/tilt key: tilt-v0.33.11 @@ -235,7 +236,7 @@ jobs: - name: Store minikube image cache if: steps.image-cache.outputs.cache-hit != 'true' - uses: actions/cache/save@v4 + uses: actions/cache/save@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4 with: path: /tmp/minikube-image-cache key: minikube-images-${{ matrix.backend }}-${{ hashFiles('devtools/Tiltfile') }} @@ -287,7 +288,7 @@ jobs: - name: Upload coverage data if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1 with: name: coverage-${{ matrix.backend }} path: | @@ -299,7 +300,7 @@ jobs: - name: Upload test results if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1 with: name: junit-${{ matrix.backend }} path: junit-${{ matrix.backend }}.xml @@ -308,7 +309,7 @@ jobs: - name: Publish test results if: always() continue-on-error: true - uses: dorny/test-reporter@d61b558e8df85cb60d09ca3e5b09653b4477cea7 # v1 + uses: dorny/test-reporter@9c68bf6253df71e8dc6d80e6fb9b223481fd5a33 # v3.0.0 with: name: "Test Results — ${{ matrix.backend }}" path: junit-${{ matrix.backend }}.xml @@ -329,7 +330,7 @@ jobs: - name: Upload Tilt logs if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1 with: name: tilt-logs-${{ matrix.backend }} path: /tmp/tilt.log @@ -339,34 +340,34 @@ jobs: name: "Coverage Report" needs: [unit-tests, ux-tests] if: always() - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 - name: Set up Python 3.9 - uses: actions/setup-python@v5 - with: + uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0 + with: python-version: "3.9" - name: Install coverage run: pip install coverage[toml] - name: Download coverage data from all backends - uses: actions/download-artifact@v4 + uses: actions/download-artifact@06bca4509dbbd3f63dbc7dcb36596b69a7cb9a0d # v8.0.1 with: pattern: coverage-* path: coverage-artifacts/ - name: Download test results from all backends - uses: actions/download-artifact@v4 + uses: actions/download-artifact@06bca4509dbbd3f63dbc7dcb36596b69a7cb9a0d # v8.0.1 with: pattern: junit-* path: junit-artifacts/ - name: Publish combined test results continue-on-error: true - uses: dorny/test-reporter@d61b558e8df85cb60d09ca3e5b09653b4477cea7 # v1 + uses: dorny/test-reporter@9c68bf6253df71e8dc6d80e6fb9b223481fd5a33 # v3.0.0 with: name: "Test Results — All Backends" path: "junit-artifacts/**/*.xml" @@ -392,14 +393,14 @@ jobs: echo "**Total coverage: $total**" >> $GITHUB_STEP_SUMMARY - name: Upload coverage to Codecov - uses: codecov/codecov-action@v5 + uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 #v6.0.0 with: token: ${{ secrets.CODECOV_TOKEN }} files: combined-coverage.xml name: ux-combined - name: Upload combined coverage report - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a #v7.0.1 with: name: coverage-combined path: |