Platform yang memungkinkan Anda mengirimkan dan menguji cuplikan kode secara online untuk latihan.
LaunchTestrun tergantung pada perangkat lunak berikut untuk dijalankan:
Untuk menginstal paket -paket ini di Ubuntu atau Debian, silakan jalankan perintah berikut:
Untuk menginstal toolchains yang diperlukan, jalankan
sudo apt-get update
sudo apt-get install default-jre default-jdk build-essential python2 python3 mono-devel
release/ ke webapps/ direktori di server Apache Tomcat Anda (jika Anda menggunakan langkah sebelumnya Tomcat harus diinstal di ~/ launchTestrun), dan lewati langkah 5.LaunchTestRun.war .webapps/ direktori.bin/catalina.sh dalam instalasi Apache Tomcat Anda dengan catalina.sh di direktori ini (tambalan masalah dengan Java 9 dan Tomcat 8).bin/ direktori di instalasi tomcat Anda dapat dieksekusi dengan menjalankan chmod +x *.sh di bin/ direktori instalasi tomcat Anda ..bin/startup.sh di direktori instalasi tomcat Anda untuk memulai LaunchTestrun. Jika Anda ingin lebih banyak keamanan pada instalasi LaunchTestrun Anda (sangat disarankan karena orang lain akan menjalankan kode di server Anda!), Anda harus membuat pengguna baru yang hanya memiliki izin untuk menjalankan dan mengakses file dalam direktori instalasi TOMCAT. Untuk mengamankan pengaturan Anda, setelah menjalankan bin/startup.sh pertama kali setelah memindahkan file .war, jalankan perintah berikut (ganti semua teks dalam tanda kurung dengan lokasi yang berlaku untuk instalasi spesifik Anda):
su root
chmod 755 [ YOUR TOMCAT DIRECTORY HERE ] -R
cd [ YOUR TOMCAT DIRECTORY HERE ]
useradd launchtestrun
mkdir work
touch webapps/LaunchTestRun/forensics.txt
chown launchtestrun:launchtestrun -R work
chown launchtestrun:launchtestrun -R logs
chown launchtestrun:launchtestrun -R webapps/LaunchTestRun
chown launchtestrun:launchtestrun -R webapps/LaunchTestRun/upload
chown launchtestrun:launchtestrun -R webapps/LaunchTestRun/forensics.txt
Setelah mengatur izin ini, saat memulai server LaunchTestrun, beralih ke pengguna launchtestrun sebelum menjalankan startup.sh dengan perintah berikut:
su launchtestrun
cd [ YOUR TOMCAT DIRECTORY HERE ]/bin
./startup.sh
Untuk melihat log forensik dari semua file yang diunggah dan dieksekusi (berisi IP, input, output, hash MD5, waktu yang diunggah, dll), lihat webapps/LaunchTestRun/forensics.txt .
CATATAN: Disarankan untuk menanamkan repositori git di webapps/LaunchTestRun/problems sehingga masalah dapat diunggah, diedit, dan dikembalikan dari jarak jauh jika diperlukan.
webapps/LaunchTestRun/problems di dalam direktori Apache Tomcat Anda. Buat direktori baru dengan struktur berikut: [+] Name of problem
|- config.json
|- judge.in
|- judge.out
|- sample.in
|- sample.out
config.json harus berisi data berikut:
{
"cpid":"12345",
"title":"Sample Tile 1",
"description":"Test Problem Description",
"pdf":"http://www.pdfsite.org/files/test.pdf",
"setinfo":"Fall Competition 2019",
"samplein":"sample.in",
"sampleout":"sample.out",
"judgein":"judge.in",
"judgeout":"judge.out",
"inputname":"input.txt",
"timeout":"2000"
}
Di mana:
cpid adalah ID # untuk masalah yang ingin Anda tentukan.title adalah judul untuk masalah yang ingin Anda definisikan.description adalah deskripsi untuk masalah yang ingin Anda definisikan.pdf adalah tautan URL ke file PDF yang ingin Anda ditampilkan dengan masalah.setinfo adalah informasi tentang set masalah yang ingin Anda tentukan berasal.samplein adalah nama file input sampel. (Input yang diberikan ke program yang diupah pengguna)sampleout adalah nama file output sampel. (Output yang diharapkan untuk input)judgein adalah nama file input juri. (Input yang diberikan ke program yang diupah pengguna)judgeout adalah nama file output juri. (Output yang diharapkan untuk input)inputname adalah nama file input yang akan dibaca oleh program yang diunggah pengguna, bahwa file input sampel/juri akan diganti namanya.timeout adalah bilangan bulat yang mendefinisikan jumlah milidetik bahwa program akan dialokasikan untuk dieksekusi sebelum penghentian paksa.webapps/LaunchTestRun/settings.json , yang berisi jalur yang akan dicari oleh kompiler. Server LaunchTestrun dapat diakses secara default dari: http://127.0.0.1:8080/LaunchTestRun/index.html/ Setelah dikonfigurasi dengan Tomcat di bagian sebelumnya. Daftar masalah yang ditambahkan dapat diakses secara default dari: http://127.0.0.1:8080/LaunchTestRun/listproblems.html/ .