kaggle_runner¤
Check main.py or test/test_coord.py for usage. It uses kaggle API to upload your script/notebook to kaggle servers and let the kernel run. And you will get running logs through message queue.
AMQP¤
AMQP is used for logging. Its license needs mention.
Example¤
Use this kaggle competition about Pneumothorax Segmentation as an example. To run the example, you will need a kaggle account and set the kaggle command line tool up. And you issues this command to let it run:
# install kaggle_runner, which will pull kaggle command line tool as the dependency
pip install kaggle_runner
# put your kaggle API token to the right place
cat > ~/.kaggle/kaggle.json <<EOF
{
"username": "YOUR_KAGGLE_USER_NAME",
"key": "YOUR_KAGGLE_API_ACCESS_TOKEN",
}
EOF
# kaggle_runner will use kaggle API to push the template kernel codes to kaggle server and wait message back
python -m kaggle_runner
A demo:
- #0 Left panel: tcpserver listen for reverse shells
- #1 Upper panel: Logs from interactive session to our tcpserver which receive logs
- #2 Second upper panel: AMQP logs received
- #3 Main panel: vim window
- #4 Right bottom panel: logged in reverse shell for commit session