Skip to content

Commit 147ea77

Browse files
Copilotdata-douser
andcommitted
Add copilot-setup-steps.yml workflow for agentic maintenance infrastructure
Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>
1 parent a255f05 commit 147ea77

File tree

1 file changed

+96
-0
lines changed

1 file changed

+96
-0
lines changed
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
name: "Copilot Setup Steps"
2+
3+
on:
4+
# Allow manual testing through the repository's "Actions" tab
5+
workflow_dispatch: {}
6+
# Automatically run the setup steps when an associated workflow is changed.
7+
push:
8+
branches:
9+
- main
10+
paths:
11+
- .github/workflows/copilot-setup-steps.yml
12+
- .github/actions/setup-codeql-environment/action.yml
13+
- qlt.conf.json
14+
pull_request:
15+
branches:
16+
- main
17+
paths:
18+
- .github/workflows/copilot-setup-steps.yml
19+
- .github/actions/setup-codeql-environment/action.yml
20+
- qlt.conf.json
21+
22+
jobs:
23+
# The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot.
24+
copilot-setup-steps:
25+
permissions:
26+
contents: read
27+
runs-on: ubuntu-latest
28+
steps:
29+
- name: Checkout repository
30+
uses: actions/checkout@v5
31+
32+
- name: Install QLT
33+
id: install-qlt
34+
uses: advanced-security/codeql-development-toolkit/.github/actions/install-qlt@main
35+
with:
36+
qlt-version: 'latest'
37+
add-to-path: true
38+
39+
- name: Install CodeQL
40+
id: install-codeql
41+
shell: bash
42+
run: |
43+
echo "Installing CodeQL"
44+
qlt codeql run install
45+
echo "-----------------------------"
46+
echo "CodeQL Home: $QLT_CODEQL_HOME"
47+
echo "CodeQL Binary: $QLT_CODEQL_PATH"
48+
49+
- name: Verify Versions of Tooling
50+
shell: bash
51+
run: |
52+
echo -e "Checking CodeQL Version:"
53+
$QLT_CODEQL_PATH --version
54+
55+
echo -e "Checking QLT Version:"
56+
echo "QLT Home: ${{ steps.install-qlt.outputs.qlt-home }}"
57+
qlt version
58+
59+
- name: Install QL Packs
60+
shell: bash
61+
run: |
62+
echo "Installing QL pack dependencies"
63+
qlt codeql run pack install --no-strict-mode javascript/frameworks/cap
64+
qlt codeql run pack install --no-strict-mode javascript/frameworks/ui5
65+
qlt codeql run pack install --no-strict-mode javascript/frameworks/xsjs
66+
67+
- name: Setup Node.js for CDS Extractor
68+
uses: actions/setup-node@v4
69+
with:
70+
node-version: '20'
71+
cache: 'npm'
72+
cache-dependency-path: extractors/cds/tools/package-lock.json
73+
74+
- name: Install CDS Extractor Dependencies
75+
shell: bash
76+
working-directory: extractors/cds/tools
77+
run: |
78+
echo "Installing CDS extractor npm dependencies"
79+
npm ci
80+
81+
- name: Build CDS Extractor
82+
shell: bash
83+
working-directory: extractors/cds/tools
84+
run: |
85+
echo "Building CDS extractor"
86+
npm run build
87+
88+
- name: Verify Setup Complete
89+
shell: bash
90+
run: |
91+
echo "✅ Setup complete and verified:"
92+
echo " - QLT installed: $(qlt version)"
93+
echo " - CodeQL installed: $($QLT_CODEQL_PATH --version)"
94+
echo " - Node.js: $(node --version)"
95+
echo " - npm: $(npm --version)"
96+
echo " - CDS extractor built successfully"

0 commit comments

Comments
 (0)