forked from actions/ai-inference
-
Notifications
You must be signed in to change notification settings - Fork 0
142 lines (117 loc) · 3.42 KB
/
Copy pathci.yml
File metadata and controls
142 lines (117 loc) · 3.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
name: Continuous Integration
on:
pull_request:
branches:
- main
push:
branches:
- main
permissions:
contents: read
models: read
jobs:
test-typescript:
name: TypeScript Tests
runs-on: ubuntu-latest
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v6
- name: Setup Node.js
id: setup-node
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
- name: Install Dependencies
id: npm-ci
run: npm ci
- name: Check Format
id: npm-format-check
run: npm run format:check
- name: Lint
id: npm-lint
run: npm run lint
- name: Test
id: npm-ci-test
run: npm run test
env:
GITHUB_TOKEN: ${{ github.token }}
test-action:
name: GitHub Actions Test
runs-on: ubuntu-latest
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
- name: Prepare Mock Copilot CLI
run: chmod +x script/mock-copilot-cli.mjs
- name: Test Local Action
id: test-action
uses: ./
with:
prompt: hello
copilot-cli-path: script/mock-copilot-cli.mjs
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Print Output
id: output
env:
RESPONSE: ${{ steps.test-action.outputs.response }}
run: printf '%s\n' "$RESPONSE"
- name: Verify Output
env:
RESPONSE: ${{ steps.test-action.outputs.response }}
run: |
if [[ -z "$RESPONSE" ]]; then
echo "Error: No response received"
exit 1
fi
printf 'Response received: %s\n' "$RESPONSE"
test-action-prompt-file:
name: GitHub Actions Test with Prompt File
runs-on: ubuntu-latest
steps:
- name: Checkout
id: checkout
uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
- name: Prepare Mock Copilot CLI
run: chmod +x script/mock-copilot-cli.mjs
- name: Create Prompt File
run: echo "hello" > prompt.txt
- name: Create System Prompt File
run: echo "You are a helpful AI assistant for testing." > system-prompt.txt
- name: Test Local Action with Prompt File
id: test-action-prompt-file
uses: ./
with:
prompt-file: prompt.txt
system-prompt-file: system-prompt.txt
copilot-cli-path: script/mock-copilot-cli.mjs
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Print Output
run: |
echo "Response saved to: ${{ steps.test-action-prompt-file.outputs.response-file }}"
cat "${{ steps.test-action-prompt-file.outputs.response-file }}"
- name: Verify Output
run: |
response_file="${{ steps.test-action-prompt-file.outputs.response-file }}"
if [[ ! -f "$response_file" ]]; then
echo "Error: Response file not found"
exit 1
fi
content=$(cat "$response_file")
if [[ -z "$content" ]]; then
echo "Error: Response file is empty"
exit 1
fi
echo "Response file content: $content"