Skip to content
Snippets Groups Projects
Select Git revision
  • 4ffb2a776e710b218d7ec11187311a688f8b4fd5
  • development default protected
  • master protected
  • prep-release-2.5.0
  • 260-auto-api-docs
  • api-doc-update
  • optional-plugin-dir
  • version-to-2.3.1
  • asm-optional-disp
  • devops-master-include-version
  • version-to-2.3.0
  • better-assembly-analysis-redux
  • worker-logs
  • better-assembly-analysis
  • devops
  • update-gradle-ui
  • 237-submission-identity-filter
  • sso
  • suppressions-deep-search
  • v2.5.1
  • v2.5.0
  • v2.4.0
  • v2.3.4
  • v2.3.3
  • 1.3.0
25 results

core

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Luc Everse authored
    4ffb2a77
    History
    AuTA logo

    AuTA

    Pipeline status Test coverage

    AuTA is your Automatic TA: it analyzes, grades and gives feedback on programming projects.

    It is suitable for both small, single-file submissions and large-scale software systems like AuTA itself. Supported languages include Java, C, C++, Python and even x86-64 assembly. The supported metrics range from simple file counts to complex metrics like the Maintainability Index. Feedback is entirely customizable and for complete control over how the submission is processed, there is also support for running Docker images.

    Runtime requirements

    Core

    AuTA's core requires a Java 11 runtime and MongoDB running on localhost.

    Furthermore, the path /srv/auta must be readable and writable by the user AuTA runs as.

    Worker

    Like the core, the worker requires a Java 11 runtime.

    Optionally Graphviz can be installed to enable UML generation.

    Usage

    Core

    Jar

    Start the core as follows:

    java -jar core.jar

    Docker

    docker run f00f/auta-core

    The following environment variables can be passed:

    Environment variable Description Required
    JAVA_ARGS Arbitrary command line arguments to pass to the Java process no
    AUTA_ARGS Arbitrary command line arguments to pass to the AuTA process no

    The server allows for set-up using username admin and password admin. Configure the server as needed and restart the process.

    Worker

    Workers can be started with the worker jar or the worker docker image:

    Jar:

    java -jar worker.jar name=$NAME host=$HOST api-token=$APITOKEN api-protocol=$PROTOCOL api-port=$PORT

    A table of arguments and their description:

    Argument Description Required Default
    api-token Worker API token yes -
    name The name of this worker no Generated
    host The host on which to reach the core no localhost
    api-protocol Protocol to use for the API (http/https) no https
    api-port The api port no
    docker-api The URI to the Docker API no unix:///var/run/docker.sock

    Docker:

    docker run -e {environment variables} f00f/auta-worker

    As opposed to running the worker with the jar, all regular environment variables are mandatory.

    A table of environment variables that can be passed to the container:

    Environment variable Description Required
    COREADDRESS Address to reach the core on yes
    APIKEY Worker API token yes
    APIPORT Port to reach the API on yes
    APIPROTOCOL Protocol to use for the API (http/https) yes
    JAVA_ARGS Arbitrary command line arguments to pass to the Java process no
    AUTA_ARGS Arbitrary command line arguments to pass to the AuTA process no

    Devops

    AuTA can be integrated in GitLab's Auto DevOps using Trampoline.