You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by oc...@apache.org on 2022/05/05 17:43:02 UTC

[trafficcontrol] branch master updated: CodeQL workflow for C++ (#6808)

This is an automated email from the ASF dual-hosted git repository.

ocket8888 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficcontrol.git


The following commit(s) were added to refs/heads/master by this push:
     new cee11c942a CodeQL workflow for C++ (#6808)
cee11c942a is described below

commit cee11c942acfc1020c55c9f6f78071fe94e806a3
Author: Zach Hoffman <zr...@apache.org>
AuthorDate: Thu May 5 11:42:56 2022 -0600

    CodeQL workflow for C++ (#6808)
    
    * Run JavaScript CodeQL workflow when TypeScript files are changed
    
    * CodeQL workflow for C++
    
    * Add more C++ filename suffixes
---
 .github/workflows/codeql.cpp.yml        | 74 +++++++++++++++++++++++++++++++++
 .github/workflows/codeql.javascript.yml |  3 +-
 2 files changed, 76 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/codeql.cpp.yml b/.github/workflows/codeql.cpp.yml
new file mode 100644
index 0000000000..0a767047dc
--- /dev/null
+++ b/.github/workflows/codeql.cpp.yml
@@ -0,0 +1,74 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+name: CodeQL - C++
+
+on:
+  push:
+    branches: [ master ]
+  pull_request:
+    branches: [ master ]
+    paths:
+      - .github/workflows/codeql.cpp.yml
+      - '**.c'
+      - '**.cc'
+      - '**.cpp'
+      - '**.cxx'
+      - '**.h'
+      - '**.hpp'
+    types: [ opened, reopened, ready_for_review, synchronize ]
+
+jobs:
+  analyze:
+    name: Analyze C++
+    runs-on: ubuntu-latest
+    steps:
+      - name: Get Apache Traffic Server RPM
+        run: |2
+          set -o errexit -o pipefail
+          <<'SHELL_COMMANDS' docker run --rm -i rockylinux:8 |
+            set -o errexit
+            cd /etc/yum.repos.d
+            curl -sLOf --compressed 'https://copr.fedorainfracloud.org/coprs/jered/trafficserver/repo/epel-8/jered-trafficserver-epel-8.repo'
+            dnf -y install yum-utils
+            yumdownloader --urls trafficserver-devel
+          SHELL_COMMANDS
+            tee docker-output
+          rpm_url="$(<docker-output grep -m1 ^http)"
+          curl --compressed -Lfso trafficserver-devel.rpm "$rpm_url"
+
+      - name: Install Apt RPM package
+        run: sudo apt-get install -y --no-install-recommends rpm
+
+      - name: Install Traffic Server RPM
+        run: sudo rpm -Uvh --nodeps trafficserver-devel.rpm
+
+      - name: Checkout repository
+        uses: actions/checkout@v2
+
+      # Initializes the CodeQL tools for scanning.
+      - name: Initialize CodeQL
+        uses: github/codeql-action/init@v2
+        with:
+          languages: cpp
+
+      - name: Build astats_over_http plugin
+        working-directory: traffic_server/plugins/astats_over_http
+        run: tsxs -v -c astats_over_http.c -o astats_over_http.so
+
+      - name: Perform CodeQL Analysis
+        uses: github/codeql-action/analyze@v2
diff --git a/.github/workflows/codeql.javascript.yml b/.github/workflows/codeql.javascript.yml
index edc377616d..90b0ace24c 100644
--- a/.github/workflows/codeql.javascript.yml
+++ b/.github/workflows/codeql.javascript.yml
@@ -24,7 +24,8 @@ on:
     branches: [ master ]
     paths:
       - .github/workflows/codeql.javascript.yml
-      - "**/*.js"
+      - "**.js"
+      - "**.ts"
     types: [opened, reopened, ready_for_review, synchronize]
 
 jobs: