diff --git a/.github/workflows/build-pr.yml b/.github/workflows/build-pr.yml
index 3b0103b264451fb65fb571585faac72c88dfc33f..9b7c0e4309b3cf3565c5cc583bc315c71d7fd310 100644
--- a/.github/workflows/build-pr.yml
+++ b/.github/workflows/build-pr.yml
@@ -16,18 +16,18 @@ jobs:
     timeout-minutes: 30
 
     steps:
-      - uses: actions/checkout@v2.3.4
+      - uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
         with:
           fetch-depth: 2
 
       - name: Set up Node.js ${{ env.NODE_VERSION }}
-        uses: actions/setup-node@v2.2.0
+        uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # renovate: tag=v2.2.0
         with:
           node-version: ${{ env.NODE_VERSION }}
           cache: yarn
 
       - name: Set up Python ${{ env.PYTHON_VERSION }}
-        uses: actions/setup-python@v2.2.2
+        uses: actions/setup-python@dc73133d4da04e56a135ae2246682783cc7c7cb6 # renovate: tag=v2.2.2
         with:
           python-version: ${{ env.PYTHON_VERSION }}
 
@@ -50,7 +50,7 @@ jobs:
         run: yarn jest --maxWorkers=2 --ci
 
       - name: Codecov
-        uses: codecov/codecov-action@v1.5.2
+        uses: codecov/codecov-action@29386c70ef20e286228c72b668a06fd0e8399192 # renovate: tag=v1.5.2
         if: always()
 
       # build after tests to exclude files
@@ -67,12 +67,12 @@ jobs:
     timeout-minutes: 15
 
     steps:
-      - uses: actions/checkout@v2.3.4
+      - uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
         with:
           fetch-depth: 2
 
       - name: Set up Node.js ${{ env.NODE_VERSION }}
-        uses: actions/setup-node@v2.2.0
+        uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # renovate: tag=v2.2.0
         with:
           node-version: ${{ env.NODE_VERSION }}
           cache: yarn
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 466f04b67caeaf2acc88ac952b365d686edb0215..636e10b6b6405718eb67051ad1191a5b753fdc0e 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -40,24 +40,24 @@ jobs:
       JAVA_VERSION: ${{ matrix.java-version }}
 
     steps:
-      - uses: actions/checkout@v2.3.4
+      - uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
         with:
           fetch-depth: 2
 
       - name: Set up Node.js ${{ env.NODE_VERSION }}
-        uses: actions/setup-node@v2.2.0
+        uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # renovate: tag=v2.2.0
         with:
           node-version: ${{ env.NODE_VERSION }}
           cache: yarn
 
       - name: Set up Python ${{ env.PYTHON_VERSION }}
-        uses: actions/setup-python@v2.2.2
+        uses: actions/setup-python@dc73133d4da04e56a135ae2246682783cc7c7cb6 # renovate: tag=v2.2.2
         with:
           python-version: ${{ env.PYTHON_VERSION }}
 
       - name: Set up Java  ${{ env.JAVA_VERSION }}
         if: env.NODE_VERSION == '14'
-        uses: actions/setup-java@v2.1.0
+        uses: actions/setup-java@d9126d7df2f1b080b603441eaf5810ced3614e78 # renovate: tag=v2.1.0
         with:
           java-version: ${{ env.JAVA_VERSION }}
           distribution: 'adopt'
@@ -87,7 +87,7 @@ jobs:
         run: yarn jest --maxWorkers=2 --ci --coverage ${{ env.coverage }}
 
       - name: Codecov
-        uses: codecov/codecov-action@v1.5.2
+        uses: codecov/codecov-action@29386c70ef20e286228c72b668a06fd0e8399192 # renovate: tag=v1.5.2
         if: always() && env.coverage == 'true'
 
       # build after tests to exclude build files from tests
@@ -105,12 +105,12 @@ jobs:
     timeout-minutes: 15
 
     steps:
-      - uses: actions/checkout@v2.3.4
+      - uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
         with:
           fetch-depth: 2
 
       - name: Set up Node.js ${{ env.NODE_VERSION }}
-        uses: actions/setup-node@v2.2.0
+        uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # renovate: tag=v2.2.0
         with:
           node-version: ${{ env.NODE_VERSION }}
           cache: yarn
@@ -149,12 +149,12 @@ jobs:
 
     steps:
       # full checkout for semantic-release
-      - uses: actions/checkout@v2.3.4
+      - uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
         with:
           fetch-depth: 0
 
       - name: Set up Node.js ${{ env.NODE_VERSION }}
-        uses: actions/setup-node@v2.2.0
+        uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # renovate: tag=v2.2.0
         with:
           node-version: ${{ env.NODE_VERSION }}
           cache: yarn
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index fb5c769a2003a39a6f406803d1d496160ac3cfa0..bebdbd6b1e4ad0c0ffdae19e6f472f55fdca59e6 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -18,11 +18,11 @@ jobs:
 
     steps:
       - name: Checkout repository
-        uses: actions/checkout@v2.3.4
+        uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
 
       # Initializes the CodeQL tools for scanning.
       - name: Initialize CodeQL
-        uses: github/codeql-action/init@v1.0.5
+        uses: github/codeql-action/init@500dad96d7fcdc698d0155829f2ae8bb6f3b79a9 # renovate: tag=v1.0.5
 
         # Override language selection by uncommenting this and choosing your languages
         # with:
@@ -30,7 +30,7 @@ jobs:
       # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java).
       # If this step fails, then you should remove it and run the build manually (see below)
       - name: Autobuild
-        uses: github/codeql-action/autobuild@v1.0.5
+        uses: github/codeql-action/autobuild@500dad96d7fcdc698d0155829f2ae8bb6f3b79a9 # renovate: tag=v1.0.5
 
       # ℹ️ Command-line programs to run using the OS shell.
       # 📚 https://git.io/JvXDl
@@ -44,4 +44,4 @@ jobs:
       #   make release
 
       - name: Perform CodeQL Analysis
-        uses: github/codeql-action/analyze@v1.0.5
+        uses: github/codeql-action/analyze@500dad96d7fcdc698d0155829f2ae8bb6f3b79a9 # renovate: tag=v1.0.5
diff --git a/.github/workflows/label-actions.yml b/.github/workflows/label-actions.yml
index 8fb6982907c93709c5a64aecae36f68dbf93e922..9134f15354d0c7795f809ba5790ca19d356237f8 100644
--- a/.github/workflows/label-actions.yml
+++ b/.github/workflows/label-actions.yml
@@ -12,7 +12,7 @@ jobs:
   reaction:
     runs-on: ubuntu-latest
     steps:
-      - uses: dessant/label-actions@v2.1.3
+      - uses: dessant/label-actions@201c706f66d13baf871b4af784bbdb7555e983b4 # renovate: tag=v2.1.3
         with:
           github-token: ${{ github.token }}
           process-only: 'issues'
diff --git a/.github/workflows/lock.yml b/.github/workflows/lock.yml
index 9a5130094fe582a350384d93c482f8d532b0a957..58cf73ed45dd4b44b95425c2b3d1505d676ee34d 100644
--- a/.github/workflows/lock.yml
+++ b/.github/workflows/lock.yml
@@ -16,7 +16,7 @@ jobs:
   lock:
     runs-on: ubuntu-latest
     steps:
-      - uses: dessant/lock-threads@v2.1.1
+      - uses: dessant/lock-threads@1621939cecf8586399a6b60d2a7af9469232b5b6 # renovate: tag=v2.1.1
         if: github.repository == 'renovatebot/renovate'
         with:
           github-token: ${{ github.token }}
diff --git a/.github/workflows/release-npm.yml b/.github/workflows/release-npm.yml
index 9cc3c708db80d8e44a8ae7f03a86d67d276b1946..4a1597cd534383013e6fbe37f15d7f0cb075a228 100644
--- a/.github/workflows/release-npm.yml
+++ b/.github/workflows/release-npm.yml
@@ -35,12 +35,12 @@ jobs:
             echo "NPM_TAG=${{ github.event.inputs.tag }}" >> $GITHUB_ENV
           fi
 
-      - uses: actions/checkout@v2.3.4
+      - uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
         with:
           ref: ${{ env.GIT_SHA }}
 
       - name: Set up Node.js ${{ env.NODE_VERSION }}
-        uses: actions/setup-node@v2.2.0
+        uses: actions/setup-node@38d90ce44d5275ad62cc48384b3d8a58c500bb5f # renovate: tag=v2.2.0
         with:
           node-version: ${{ env.NODE_VERSION }}
           cache: yarn
diff --git a/.github/workflows/stale-action.yml b/.github/workflows/stale-action.yml
index fe80a3be64cba8546af1c0140483aae2f8701ef6..eb71acf29d9fee7c98d17752820f0a712f69b949 100644
--- a/.github/workflows/stale-action.yml
+++ b/.github/workflows/stale-action.yml
@@ -9,7 +9,7 @@ jobs:
   stale:
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/stale@v3.0.19
+      - uses: actions/stale@98ed4cb500039dbcccf4bd9bedada4d0187f2757 # renovate: tag=v3.0.19
         with:
           # Rate limit per run, (defaults to 30, but we've increased it to 40 for now).
           operations-per-run: 40
diff --git a/.github/workflows/ws_scan.yaml b/.github/workflows/ws_scan.yaml
index b4b6003775ead5d7b058eaa743f3682dc0304d0d..58d467cfa7bd4f80112d6fdae2b6b3ad59db82f6 100644
--- a/.github/workflows/ws_scan.yaml
+++ b/.github/workflows/ws_scan.yaml
@@ -8,7 +8,7 @@ jobs:
   WS_SCAN:
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v2.3.4
+      - uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # renovate: tag=v2.3.4
 
       - name: Download UA
         run: curl -LJO https://github.com/whitesource/unified-agent-distribution/releases/latest/download/wss-unified-agent.jar