#!/bin/bash
cvmfs_test_name="Commit command in a repository connected to the gateway"
cvmfs_test_autofs_on_startup=false
cvmfs_test_suites="quick"

cleanup() {
    sudo rm -f /etc/cvmfs/config.d/test.repo.org.local
}

cvmfs_run_test() {
    set_up_repository_gateway || return 1

    [ -f /etc/cvmfs/config.d/test.repo.org.local ] && return 10
    trap cleanup EXIT HUP INT TERM || return $?

    echo "*** prepare config file"
    sudo bash -c "echo CVMFS_SERVER_URL=$(get_repo_url test.repo.org) > /etc/cvmfs/config.d/test.repo.org.local"
    sudo bash -c "echo CVMFS_HTTP_PROXY="DIRECT" >> /etc/cvmfs/config.d/test.repo.org.local"

    echo "*** checking that enter, commit and exit succeed"
    cvmfs_server enter test.repo.org --transaction --repo-config /etc/cvmfs/repositories.d -- false && return 2
    cvmfs_server enter test.repo.org --transaction --repo-config /etc/cvmfs/repositories.d -- cvmfs_server abort -f test.repo.org || return 3
    cvmfs_server enter test.repo.org --transaction --repo-config /etc/cvmfs/repositories.d -- cvmfs_publish commit test.repo.org || return 4

    return 0
}
