3232 required : false
3333 default : ' 100'
3434 type : string
35- runner_type :
36- required : false
37- default : ' ubuntu-latest'
38- type : string
3935 secrets :
40- AWS_ACCESS_KEY_ID :
36+ MINIO_ENDPOINT :
4137 required : true
42- AWS_SECRET_ACCESS_KEY :
38+ MINIO_ACCESS_KEY_ID :
39+ required : true
40+ MINIO_SECRET_ACCESS_KEY :
4341 required : true
4442 workflow_dispatch :
4543 inputs :
4846 required : true
4947 default : ' tpch'
5048 type : string
51- runner_type :
52- description : ' GitHub runner label to execute on'
53- required : false
54- default : ' spiceai-macos'
55- type : string
5649 scale_factor :
5750 description : ' TPC-H scale factor'
5851 required : true
6154 bucket :
6255 description : ' S3 bucket name'
6356 required : false
64- default : ' spiceai-public-datasets '
57+ default : ' spicebench '
6558 type : string
6659 prefix :
6760 description : ' Base S3 key prefix for generated files (scenario is appended automatically)'
8780jobs :
8881 run-data-generation :
8982 name : Run data generation
90- runs-on : ${{ inputs.runner_type || github.event.inputs.runner_type || 'ubuntu-latest' }}
83+ runs-on : spiceai-dev-runners
9184 timeout-minutes : 600
9285 steps :
9386 - uses : actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6
@@ -101,13 +94,26 @@ jobs:
10194 restore-keys : |
10295 data-generation-${{ runner.os }}-
10396
97+ - name : Cache checkpointer binary
98+ id : cache-checkpointer
99+ uses : actions/cache@v4
100+ with :
101+ path : ~/.spice/bin/checkpointer
102+ key : checkpointer-${{ runner.os }}-${{ hashFiles('**/Cargo.lock', '**/Cargo.toml', '**/*.rs') }}
103+ restore-keys : |
104+ checkpointer-${{ runner.os }}-
105+
104106 - name : Setup Rust toolchain
105- if : steps.cache-data-generation.outputs.cache-hit != 'true'
107+ if : steps.cache-data-generation.outputs.cache-hit != 'true' || steps.cache-checkpointer.outputs.cache-hit != 'true'
106108 uses : actions-rust-lang/setup-rust-toolchain@v1
107109 with :
108110 toolchain : 1.91
109111 cache : false
110112
113+ - name : Setup CC
114+ if : steps.cache-data-generation.outputs.cache-hit != 'true' || steps.cache-checkpointer.outputs.cache-hit != 'true'
115+ uses : ./.github/actions/setup-cc
116+
111117 - name : Build data-generation
112118 if : steps.cache-data-generation.outputs.cache-hit != 'true'
113119 run : |
@@ -123,8 +129,9 @@ jobs:
123129 PREFIX : ${{ inputs.prefix || github.event.inputs.prefix || 'data-gen' }}
124130 REGION : ${{ inputs.region || github.event.inputs.region || 'us-east-1' }}
125131 NUM_STEPS : ${{ inputs.num_steps || github.event.inputs.num_steps || '25' }}
126- AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
127- AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
132+ MINIO_ENDPOINT : ${{ secrets.MINIO_ENDPOINT }}
133+ AWS_ACCESS_KEY_ID : ${{ secrets.MINIO_ACCESS_KEY_ID }}
134+ AWS_SECRET_ACCESS_KEY : ${{ secrets.MINIO_SECRET_ACCESS_KEY }}
128135 RUST_LOG : info
129136 run : |
130137 ARGS="--dataset ${SCENARIO}"
@@ -134,19 +141,11 @@ jobs:
134141 ARGS="${ARGS} --prefix ${PREFIX}"
135142 ARGS="${ARGS} --region ${REGION}"
136143 ARGS="${ARGS} --num-steps ${NUM_STEPS}"
144+ ARGS="${ARGS} --endpoint ${MINIO_ENDPOINT}"
137145
138146 echo "Running: data-generation run ${ARGS}"
139147 ~/.spice/bin/data-generation run ${ARGS}
140148
141- - name : Cache checkpointer binary
142- id : cache-checkpointer
143- uses : actions/cache@v4
144- with :
145- path : ~/.spice/bin/checkpointer
146- key : checkpointer-${{ runner.os }}-${{ hashFiles('**/Cargo.lock', '**/Cargo.toml', '**/*.rs') }}
147- restore-keys : |
148- checkpointer-${{ runner.os }}-
149-
150149 - name : Build checkpointer
151150 if : steps.cache-checkpointer.outputs.cache-hit != 'true'
152151 run : |
@@ -162,8 +161,9 @@ jobs:
162161 PREFIX : ${{ inputs.prefix || github.event.inputs.prefix || 'data-gen' }}
163162 REGION : ${{ inputs.region || github.event.inputs.region || 'us-east-1' }}
164163 CHECKPOINT_INTERVAL_STEPS : ${{ inputs.checkpoint_interval_steps || github.event.inputs.checkpoint_interval_steps || '100' }}
165- AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
166- AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
164+ MINIO_ENDPOINT : ${{ secrets.MINIO_ENDPOINT }}
165+ AWS_ACCESS_KEY_ID : ${{ secrets.MINIO_ACCESS_KEY_ID }}
166+ AWS_SECRET_ACCESS_KEY : ${{ secrets.MINIO_SECRET_ACCESS_KEY }}
167167 RUST_LOG : info
168168 run : |
169169 VERSION=$(python3 - <<'PY'
@@ -191,6 +191,7 @@ jobs:
191191 fi
192192
193193 ARGS="${ARGS} --checkpoint-interval-steps ${CHECKPOINT_INTERVAL_STEPS}"
194+ ARGS="${ARGS} --endpoint ${MINIO_ENDPOINT}"
194195
195196 echo "Running: checkpointer ${ARGS}"
196197 ~/.spice/bin/checkpointer ${ARGS}
0 commit comments