Uma plataforma que permite enviar e testar trechos de código on -line para prática.
LaunchTestrun depende do seguinte software para executar:
Para instalar esses pacotes no Ubuntu ou Debian, execute os seguintes comandos:
Para instalar as cadeias de ferramentas necessárias, execute
sudo apt-get update
sudo apt-get install default-jre default-jdk build-essential python2 python3 mono-devel
release/ para o webapps/ diretório no seu servidor Apache Tomcat (se você usou as etapas anteriores que o tomcat deve ser instalado em ~/ soulittestestrun) e skip para a etapa 5.LaunchTestRun.war .webapps/ Diretório.bin/catalina.sh na sua instalação do Apache Tomcat com o catalina.sh neste diretório (o patches é o Java 9 e o Tomcat 8).bin/ diretório em sua instalação do tomcat executável executando chmod +x *.sh no bin/ diretório da sua instalação do tomcat ..bin/startup.sh no seu diretório de instalação do Tomcat para iniciar o iniciação do lançamento. Se você deseja mais segurança na sua instalação do LaunchTestrun (fortemente recomendado, pois outros estarão executando o código no seu servidor!), Você deve criar um novo usuário que tenha apenas permissões para executar e acessar os arquivos no diretório de instalação do TomCat. Para proteger sua configuração, depois de executar bin/startup.sh na primeira vez depois de mover o arquivo .war, execute os seguintes comandos (substitua todo o texto entre colchetes por locais aplicáveis à sua instalação específica):
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
Depois de definir essas permissões, ao iniciar o servidor LaunchTestrun, mude para o Usuário launchtestrun antes de executar startup.sh com os seguintes comandos:
su launchtestrun
cd [ YOUR TOMCAT DIRECTORY HERE ]/bin
./startup.sh
Para visualizar um log forense de todos os arquivos enviados e executados (contendo IP, entrada, saída, hash md5, tempo carregado etc.), visualize webapps/LaunchTestRun/forensics.txt .
NOTA: Recomenda -se a inalitalizar um repositório Git em webapps/LaunchTestRun/problems para que os problemas possam ser carregados remotamente, editados e revertidos, se necessário.
webapps/LaunchTestRun/problems dentro do diretório Apache Tomcat. Crie um novo diretório com a seguinte estrutura: [+] Name of problem
|- config.json
|- judge.in
|- judge.out
|- sample.in
|- sample.out
config.json deve conter os seguintes dados:
{
"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"
}
Onde:
cpid é o ID # para o problema que você deseja definir.title é o título do problema que você deseja definir.description é a descrição do problema que você deseja definir.pdf é o link URL para o arquivo PDF que você deseja ser exibido com o problema.setinfo é a informação sobre o conjunto de problemas que o problema que você deseja definir vem.samplein é o nome do arquivo de entrada de amostra. (A entrada dada ao programa utilizado pelo usuário)sampleout é o nome do arquivo de saída da amostra. (A saída esperada para a entrada)judgein é o nome do arquivo de entrada do juiz. (A entrada dada ao programa utilizado pelo usuário)judgeout é o nome do arquivo de saída do juiz. (A saída esperada para a entrada)inputname é o nome do arquivo de entrada que o programa utilizado pelo usuário lerá, que o arquivo de entrada de amostra/juiz será renomeado.timeout é um número inteiro que define o número de milissegundos que o programa será atribuído a executar antes de uma rescisão forçada.webapps/LaunchTestRun/settings.json , que contém os caminhos em que o LaunchTestrun procurará os compiladores. O servidor LaunchTestrun pode ser acessado por padrão em: http://127.0.0.1:8080/LaunchTestRun/index.html/ Depois de configurado com o Tomcat nas seções anteriores. Uma lista de problemas adicionados pode ser acessada por padrão em: http://127.0.0.1:8080/LaunchTestRun/listproblems.html/ .