Skip to content

Commit 92bf1f3

Browse files
committed
ci: refatora comando da actions para rodar todos os arquivos
1 parent d52c61b commit 92bf1f3

File tree

5 files changed

+11006
-273
lines changed

5 files changed

+11006
-273
lines changed

.github/workflows/extrai_fatos.yml

Lines changed: 61 additions & 158 deletions
Original file line numberDiff line numberDiff line change
@@ -10,171 +10,74 @@ jobs:
1010
- name: Build container
1111
run: DOCKER_BUILDKIT=1 docker build --tag ptoie_dep .
1212

13-
# --- JSON ---
14-
- name: Run TESTE JSON
13+
- name: Run all inputs with all configurations
1514
run: |
16-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/teste.txt --input-type txt
17-
mv ./outputs/output.json ./outputs/teste.json
18-
- name: Run CETEN200 (base) JSON
19-
run: |
20-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll
21-
mv ./outputs/output.json ./outputs/ceten-200.json
22-
- name: Run WIKI200 (base) JSON
23-
run: |
24-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll
25-
mv ./outputs/output.json ./outputs/wiki-200.json
15+
set -euo pipefail
16+
mkdir -p outputs
2617
27-
- name: Run WIKI200-CC JSON
28-
run: |
29-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -cc
30-
mv ./outputs/output.json ./outputs/wiki-200-cc.json
31-
- name: Run CETEN200-CC JSON
32-
run: |
33-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -cc
34-
mv ./outputs/output.json ./outputs/ceten-200-cc.json
35-
- name: Run WIKI200-SC JSON
36-
run: |
37-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -sc
38-
mv ./outputs/output.json ./outputs/wiki-200-sc.json
39-
- name: Run CETEN200-SC JSON
40-
run: |
41-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -sc
42-
mv ./outputs/output.json ./outputs/ceten-200-sc.json
43-
- name: Run WIKI200-HS JSON
44-
run: |
45-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -hs
46-
mv ./outputs/output.json ./outputs/wiki-200-hs.json
47-
- name: Run CETEN200-HS JSON
48-
run: |
49-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -hs
50-
mv ./outputs/output.json ./outputs/ceten-200-hs.json
51-
- name: Run WIKI200-A JSON
52-
run: |
53-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -a
54-
mv ./outputs/output.json ./outputs/wiki-200-a.json
55-
- name: Run CETEN200-A JSON
56-
run: |
57-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -a
58-
mv ./outputs/output.json ./outputs/ceten-200-a.json
59-
- name: Run WIKI200-A-T JSON
60-
run: |
61-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -a -t
62-
mv ./outputs/output.json ./outputs/wiki-200-a-t.json
63-
- name: Run CETEN200-A-T JSON
64-
run: |
65-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -a -t
66-
mv ./outputs/output.json ./outputs/ceten-200-a-t.json
67-
- name: Run WIKI200-ALL JSON
68-
run: |
69-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -cc -sc -hs -a -t
70-
mv ./outputs/output.json ./outputs/wiki-200-all.json
71-
- name: Run CETEN200-ALL JSON
72-
run: |
73-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -cc -sc -hs -a -t
74-
mv ./outputs/output.json ./outputs/ceten-200-all.json
18+
# Define flag combinations to run (same for JSON and CSV)
19+
FLAGS_LIST=("" "-cc" "-sc" "-hs" "-a" "-a -t" "-cc -sc -hs -a -t")
7520
76-
# --- CSV ---
77-
- name: Run TESTE CSV
78-
run: |
79-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/teste.txt -o ./outputs/output.csv -ot csv
80-
mv ./outputs/output.csv ./outputs/teste.csv
81-
- name: Run CETEN200 (base) CSV
82-
run: |
83-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -o ./outputs/output.csv -ot csv
84-
mv ./outputs/output.csv ./outputs/ceten-200.csv
85-
- name: Run WIKI200 (base) CSV
86-
run: |
87-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -o ./outputs/output.csv -ot csv
88-
mv ./outputs/output.csv ./outputs/wiki-200.csv
21+
for input_path in inputs/*; do
22+
[ -f "$input_path" ] || continue
23+
filename=$(basename "$input_path")
24+
# strip last extension only (handles names like ceten-200.conll)
25+
name="${filename%.*}"
8926
90-
- name: Run WIKI200-CC CSV
91-
run: |
92-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -cc -o ./outputs/output.csv -ot csv
93-
mv ./outputs/output.csv ./outputs/wiki-200-cc.csv
94-
- name: Run CETEN200-CC CSV
95-
run: |
96-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -cc -o ./outputs/output.csv -ot csv
97-
mv ./outputs/output.csv ./outputs/ceten-200-cc.csv
98-
- name: Run WIKI200-SC CSV
99-
run: |
100-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -sc -o ./outputs/output.csv -ot csv
101-
mv ./outputs/output.csv ./outputs/wiki-200-sc.csv
102-
- name: Run CETEN200-SC CSV
103-
run: |
104-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -sc -o ./outputs/output.csv -ot csv
105-
mv ./outputs/output.csv ./outputs/ceten-200-sc.csv
106-
- name: Run WIKI200-HS CSV
107-
run: |
108-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -hs -o ./outputs/output.csv -ot csv
109-
mv ./outputs/output.csv ./outputs/wiki-200-hs.csv
110-
- name: Run CETEN200-HS CSV
111-
run: |
112-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -hs -o ./outputs/output.csv -ot csv
113-
mv ./outputs/output.csv ./outputs/ceten-200-hs.csv
114-
- name: Run WIKI200-A CSV
115-
run: |
116-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -a -o ./outputs/output.csv -ot csv
117-
mv ./outputs/output.csv ./outputs/wiki-200-a.csv
118-
- name: Run CETEN200-A CSV
119-
run: |
120-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -a -o ./outputs/output.csv -ot csv
121-
mv ./outputs/output.csv ./outputs/ceten-200-a.csv
122-
- name: Run WIKI200-A-T CSV
123-
run: |
124-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -a -t -o ./outputs/output.csv -ot csv
125-
mv ./outputs/output.csv ./outputs/wiki-200-a-t.csv
126-
- name: Run CETEN200-A-T CSV
127-
run: |
128-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -a -t -o ./outputs/output.csv -ot csv
129-
mv ./outputs/output.csv ./outputs/ceten-200-a-t.csv
130-
- name: Run WIKI200-ALL CSV
131-
run: |
132-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/wiki-200.conll -it conll -cc -sc -hs -a -t -o ./outputs/output.csv -ot csv
133-
mv ./outputs/output.csv ./outputs/wiki-200-all.csv
134-
- name: Run CETEN200-ALL CSV
135-
run: |
136-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/ceten-200.conll -it conll -cc -sc -hs -a -t -o ./outputs/output.csv -ot csv
137-
mv ./outputs/output.csv ./outputs/ceten-200-all.csv
138-
- name: Run BIA-ALL CSV
139-
run: |
140-
docker run --rm -v $(pwd):/ptoie_dep ptoie_dep poetry run python3 src/main.py -i ./inputs/bia.txt --input-type txt -cc -sc -hs -a -t -o ./outputs/output.csv -ot csv
141-
mv ./outputs/output.csv ./outputs/bia.csv
142-
27+
# detect input type: .txt -> --input-type txt, otherwise assume conll
28+
if [[ "$filename" == *.txt ]]; then
29+
input_args="--input-type txt"
30+
else
31+
input_args="-it conll"
32+
fi
33+
34+
for flags in "${FLAGS_LIST[@]}"; do
35+
# --- JSON ---
36+
echo "[JSON] input=$filename flags=[$flags]"
37+
# remove stale json output if any
38+
rm -f ./outputs/output.json
39+
docker run --rm -v "$(pwd)":/ptoie_dep ptoie_dep poetry run python3 src/main.py -i "$input_path" $input_args $flags || echo "json-run-failed for $filename $flags"
40+
41+
# compute cleaned suffix for filename (empty => base name only)
42+
if [[ -z "$flags" ]]; then
43+
out_json="./outputs/${name}.json"
44+
else
45+
cleaned=$(echo "$flags" | sed -E "s/^\s*-//; s/\s+-/ /g; s/\s+/-/g; s/^-//")
46+
# remove any leading/trailing hyphens/spaces
47+
cleaned=$(echo "$cleaned" | sed -E 's/^[ -]+//; s/[ -]+$//; s/\s+/-/g')
48+
out_json="./outputs/${name}-${cleaned}.json"
49+
fi
50+
if [[ -f ./outputs/output.json ]]; then
51+
mv ./outputs/output.json "$out_json"
52+
else
53+
echo "Warning: JSON output not produced for $filename with flags [$flags]"
54+
fi
55+
56+
# --- CSV ---
57+
echo "[CSV] input=$filename flags=[$flags]"
58+
# remove stale csv output if any
59+
rm -f ./outputs/output.csv
60+
docker run --rm -v "$(pwd)":/ptoie_dep ptoie_dep poetry run python3 src/main.py -i "$input_path" $input_args $flags -o ./outputs/output.csv -ot csv || echo "csv-run-failed for $filename $flags"
61+
62+
if [[ -z "$flags" ]]; then
63+
out_csv="./outputs/${name}.csv"
64+
else
65+
cleaned=$(echo "$flags" | sed -E "s/^\s*-//; s/\s+-/ /g; s/\s+/-/g; s/^-//")
66+
cleaned=$(echo "$cleaned" | sed -E 's/^[ -]+//; s/[ -]+$//; s/\s+/-/g')
67+
out_csv="./outputs/${name}-${cleaned}.csv"
68+
fi
69+
if [[ -f ./outputs/output.csv ]]; then
70+
mv ./outputs/output.csv "$out_csv"
71+
else
72+
echo "Warning: CSV output not produced for $filename with flags [$flags]"
73+
fi
74+
75+
done
76+
done
14377
144-
# --- Upload de todos os artefatos ---
14578
- name: Upload artifacts
14679
uses: actions/upload-artifact@v4
14780
with:
14881
name: extrai_fatos_outputs
14982
path: |
150-
./outputs/teste.json
151-
./outputs/ceten-200.json
152-
./outputs/wiki-200.json
153-
./outputs/ceten-200-cc.json
154-
./outputs/wiki-200-cc.json
155-
./outputs/ceten-200-sc.json
156-
./outputs/wiki-200-sc.json
157-
./outputs/ceten-200-hs.json
158-
./outputs/wiki-200-hs.json
159-
./outputs/ceten-200-a.json
160-
./outputs/wiki-200-a.json
161-
./outputs/ceten-200-a-t.json
162-
./outputs/wiki-200-a-t.json
163-
./outputs/ceten-200-all.json
164-
./outputs/wiki-200-all.json
165-
./outputs/teste.csv
166-
./outputs/ceten-200.csv
167-
./outputs/wiki-200.csv
168-
./outputs/wiki-200-cc.csv
169-
./outputs/ceten-200-cc.csv
170-
./outputs/wiki-200-sc.csv
171-
./outputs/ceten-200-sc.csv
172-
./outputs/wiki-200-hs.csv
173-
./outputs/ceten-200-hs.csv
174-
./outputs/wiki-200-a.csv
175-
./outputs/ceten-200-a.csv
176-
./outputs/wiki-200-a-t.csv
177-
./outputs/ceten-200-a-t.csv
178-
./outputs/wiki-200-all.csv
179-
./outputs/ceten-200-all.csv
180-
./outputs/bia.csv
83+
./outputs

.github/workflows/run_main.yml

Lines changed: 0 additions & 114 deletions
This file was deleted.

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,5 @@
44
out.txt
55
/outputs/*
66
!/outputs/.gitkeep
7-
/inputs
87
/models/*
98
!/models/.gitkeep

0 commit comments

Comments
 (0)