File tree Expand file tree Collapse file tree 8 files changed +330
-1
lines changed Expand file tree Collapse file tree 8 files changed +330
-1
lines changed Original file line number Diff line number Diff line change @@ -45,3 +45,5 @@ next-env.d.ts
4545
4646certificates
4747.env * .local
48+
49+ * .csv
Original file line number Diff line number Diff line change 1+ {
2+ "name" : " eloop" ,
3+ "version" : " 1" ,
4+ "items" : [
5+ {
6+ "type" : " http" ,
7+ "name" : " users" ,
8+ "filename" : " export_users.bru" ,
9+ "seq" : 2 ,
10+ "settings" : {
11+ "encodeUrl" : true ,
12+ "timeout" : 0
13+ },
14+ "tags" : [],
15+ "request" : {
16+ "url" : " {{process.env.NEXTAUTH_URL}}/api/admin/export/table?table=users&key={{process.env.CSV_EXPORT_KEY}}" ,
17+ "method" : " GET" ,
18+ "headers" : [],
19+ "params" : [
20+ {
21+ "name" : " table" ,
22+ "value" : " users" ,
23+ "type" : " query" ,
24+ "enabled" : true
25+ },
26+ {
27+ "name" : " key" ,
28+ "value" : " {{process.env.CSV_EXPORT_KEY}}" ,
29+ "type" : " query" ,
30+ "enabled" : true
31+ }
32+ ],
33+ "body" : {
34+ "mode" : " none" ,
35+ "formUrlEncoded" : [],
36+ "multipartForm" : [],
37+ "file" : []
38+ },
39+ "script" : {},
40+ "vars" : {},
41+ "assertions" : [],
42+ "tests" : " " ,
43+ "docs" : " " ,
44+ "auth" : {
45+ "mode" : " inherit"
46+ }
47+ }
48+ },
49+ {
50+ "type" : " http" ,
51+ "name" : " registrations" ,
52+ "filename" : " export_registrations.bru" ,
53+ "seq" : 4 ,
54+ "settings" : {
55+ "encodeUrl" : true ,
56+ "timeout" : 0
57+ },
58+ "tags" : [],
59+ "request" : {
60+ "url" : " {{process.env.NEXTAUTH_URL}}/api/admin/export/table?table=registrations&key={{process.env.CSV_EXPORT_KEY}}" ,
61+ "method" : " GET" ,
62+ "headers" : [],
63+ "params" : [
64+ {
65+ "name" : " table" ,
66+ "value" : " registrations" ,
67+ "type" : " query" ,
68+ "enabled" : true
69+ },
70+ {
71+ "name" : " key" ,
72+ "value" : " {{process.env.CSV_EXPORT_KEY}}" ,
73+ "type" : " query" ,
74+ "enabled" : true
75+ }
76+ ],
77+ "body" : {
78+ "mode" : " none" ,
79+ "formUrlEncoded" : [],
80+ "multipartForm" : [],
81+ "file" : []
82+ },
83+ "script" : {},
84+ "vars" : {},
85+ "assertions" : [],
86+ "tests" : " " ,
87+ "docs" : " " ,
88+ "auth" : {
89+ "mode" : " inherit"
90+ }
91+ }
92+ },
93+ {
94+ "type" : " http" ,
95+ "name" : " scan_logs" ,
96+ "filename" : " export_scan_logs.bru" ,
97+ "seq" : 3 ,
98+ "settings" : {
99+ "encodeUrl" : true ,
100+ "timeout" : 0
101+ },
102+ "tags" : [],
103+ "request" : {
104+ "url" : " {{process.env.NEXTAUTH_URL}}/api/admin/export/table?table=scan_logs&key={{process.env.CSV_EXPORT_KEY}}" ,
105+ "method" : " GET" ,
106+ "headers" : [],
107+ "params" : [
108+ {
109+ "name" : " table" ,
110+ "value" : " scan_logs" ,
111+ "type" : " query" ,
112+ "enabled" : true
113+ },
114+ {
115+ "name" : " key" ,
116+ "value" : " {{process.env.CSV_EXPORT_KEY}}" ,
117+ "type" : " query" ,
118+ "enabled" : true
119+ }
120+ ],
121+ "body" : {
122+ "mode" : " none" ,
123+ "formUrlEncoded" : [],
124+ "multipartForm" : [],
125+ "file" : []
126+ },
127+ "script" : {},
128+ "vars" : {},
129+ "assertions" : [],
130+ "tests" : " " ,
131+ "docs" : " " ,
132+ "auth" : {
133+ "mode" : " inherit"
134+ }
135+ }
136+ },
137+ {
138+ "type" : " http" ,
139+ "name" : " checkpoint" ,
140+ "filename" : " export_checkpoint.bru" ,
141+ "seq" : 5 ,
142+ "settings" : {
143+ "encodeUrl" : true ,
144+ "timeout" : 0
145+ },
146+ "tags" : [],
147+ "request" : {
148+ "url" : " {{process.env.NEXTAUTH_URL}}/api/admin/export/checkpoint?event_id={{process.env.EVENT_ID}}&key={{process.env.CSV_EXPORT_KEY}}" ,
149+ "method" : " GET" ,
150+ "headers" : [],
151+ "params" : [
152+ {
153+ "name" : " event_id" ,
154+ "value" : " {{process.env.EVENT_ID}}" ,
155+ "type" : " query" ,
156+ "enabled" : true
157+ },
158+ {
159+ "name" : " key" ,
160+ "value" : " {{process.env.CSV_EXPORT_KEY}}" ,
161+ "type" : " query" ,
162+ "enabled" : true
163+ }
164+ ],
165+ "body" : {
166+ "mode" : " none" ,
167+ "formUrlEncoded" : [],
168+ "multipartForm" : [],
169+ "file" : []
170+ },
171+ "script" : {},
172+ "vars" : {},
173+ "assertions" : [],
174+ "tests" : " " ,
175+ "docs" : " " ,
176+ "auth" : {
177+ "mode" : " inherit"
178+ }
179+ }
180+ },
181+ {
182+ "type" : " folder" ,
183+ "name" : " exports" ,
184+ "filename" : " exports" ,
185+ "seq" : 6 ,
186+ "root" : {
187+ "meta" : {
188+ "name" : " exports" ,
189+ "seq" : 6
190+ }
191+ }
192+ }
193+ ],
194+ "activeEnvironmentUid" : " teaxSwGdLOq4UjUC9BLuQ" ,
195+ "environments" : [],
196+ "brunoConfig" : {
197+ "version" : " 1" ,
198+ "name" : " eloop" ,
199+ "type" : " collection" ,
200+ "ignore" : [
201+ " node_modules" ,
202+ " .git"
203+ ],
204+ "size" : 0.001049041748046875 ,
205+ "filesCount" : 5
206+ }
207+ }
Original file line number Diff line number Diff line change 1+ meta {
2+ name : checkpoint
3+ type : http
4+ seq : 5
5+ }
6+
7+ get {
8+ url : {{process.env.NEXTAUTH_URL}}/api/admin/export/checkpoint?event_id={{process.env.EVENT_ID}}&key={{process.env.CSV_EXPORT_KEY}}
9+ body : none
10+ auth : inherit
11+ }
12+
13+ params:query {
14+ event_id: {{process.env.EVENT_ID}}
15+ key: {{process.env.CSV_EXPORT_KEY}}
16+ }
17+
18+ settings {
19+ encodeUrl: true
20+ timeout: 0
21+ }
Original file line number Diff line number Diff line change 1+ meta {
2+ name : registrations
3+ type : http
4+ seq : 4
5+ }
6+
7+ get {
8+ url : {{process.env.NEXTAUTH_URL}}/api/admin/export/table?table=registrations&key={{process.env.CSV_EXPORT_KEY}}
9+ body : none
10+ auth : inherit
11+ }
12+
13+ params:query {
14+ table: registrations
15+ key: {{process.env.CSV_EXPORT_KEY}}
16+ }
17+
18+ settings {
19+ encodeUrl: true
20+ timeout: 0
21+ }
Original file line number Diff line number Diff line change 1+ meta {
2+ name : scan_logs
3+ type : http
4+ seq : 3
5+ }
6+
7+ get {
8+ url : {{process.env.NEXTAUTH_URL}}/api/admin/export/table?table=scan_logs&key={{process.env.CSV_EXPORT_KEY}}
9+ body : none
10+ auth : inherit
11+ }
12+
13+ params:query {
14+ table: scan_logs
15+ key: {{process.env.CSV_EXPORT_KEY}}
16+ }
17+
18+ settings {
19+ encodeUrl: true
20+ timeout: 0
21+ }
Original file line number Diff line number Diff line change 1+ meta {
2+ name : users
3+ type : http
4+ seq : 2
5+ }
6+
7+ get {
8+ url : {{process.env.NEXTAUTH_URL}}/api/admin/export/table?table=users&key={{process.env.CSV_EXPORT_KEY}}
9+ body : none
10+ auth : inherit
11+ }
12+
13+ params:query {
14+ table: users
15+ key: {{process.env.CSV_EXPORT_KEY}}
16+ }
17+
18+ settings {
19+ encodeUrl: true
20+ timeout: 0
21+ }
Original file line number Diff line number Diff line change 1+ #! /usr/bin/env bash
2+ set -euo pipefail
3+
4+ # Load env file if present
5+ if [ -f .env ]; then
6+ # shellcheck disable=SC1091
7+ source .env
8+ fi
9+
10+ DEST_DIR=" ./exports"
11+ mkdir -p " $DEST_DIR "
12+
13+ download () {
14+ local file=" $1 "
15+ local out=" $2 "
16+ echo " Running $file -> $out "
17+ curl -sS " ${NEXTAUTH_URL} /api/admin/export/table?${file} " -o " $out " || true
18+ }
19+
20+ echo " Exporting users..."
21+ curl -sS " ${NEXTAUTH_URL} /api/admin/export/table?table=users&key=${CSV_EXPORT_KEY} " -o " $DEST_DIR /users.csv"
22+
23+ echo " Exporting registrations..."
24+ curl -sS " ${NEXTAUTH_URL} /api/admin/export/table?table=registrations&key=${CSV_EXPORT_KEY} " -o " $DEST_DIR /registrations.csv"
25+
26+ echo " Exporting scan_logs..."
27+ curl -sS " ${NEXTAUTH_URL} /api/admin/export/table?table=scan_logs&key=${CSV_EXPORT_KEY} " -o " $DEST_DIR /scan_logs.csv"
28+
29+ if [ -n " ${EVENT_ID:- } " ]; then
30+ echo " Exporting checkpoint for event ${EVENT_ID} ..."
31+ curl -sS " ${NEXTAUTH_URL} /api/admin/export/checkpoint?event_id=${EVENT_ID} &key=${CSV_EXPORT_KEY} " -o " $DEST_DIR /checkpoint.csv"
32+ else
33+ echo " EVENT_ID not set; skipping checkpoint export"
34+ fi
35+
36+ echo " Exports saved to $DEST_DIR "
Original file line number Diff line number Diff line change @@ -9,7 +9,7 @@ const SHEET_NAME = props.getProperty('SHEET_NAME');
99function importCSVFromEloop ( ) {
1010 try {
1111 // Build the URL dynamically
12- const csvUrl = `${ NEXTAUTH_URL } /api/events/ ${ EVENT_ID } /export/key? key=${ CSV_EXPORT_KEY } ` ;
12+ const csvUrl = `${ NEXTAUTH_URL } /api/admin/export/checkpoint?event_id= ${ EVENT_ID } & key=${ CSV_EXPORT_KEY } ` ;
1313
1414 // Fetch CSV content
1515 const csvContent = UrlFetchApp . fetch ( csvUrl ) . getContentText ( ) ;
You can’t perform that action at this time.
0 commit comments