sagoin
is a command-line submission tool for the UMD CS Submit Server.
This project is largely inspired by and aims to be the spiritual successor of the [CommandLineSubmission] program from the marmoset project by Jaime Spacco, William Pugh, and others,
hence the [AGPL-3.0-or-later] license and the name sagoin,
which refers to a marmoset.
The latest precompiled binaries are available on github.
Alternatively you can install sagoin from crates.io with cargo.
sh
cargo install sagoin
sh
cargo build --release
Submit the project in the current directory:
sh
sagoin
Submit the project under the ProjectName
directory:
sh
sagoin ProjectName
Submit the project under the ProjectName
directory and open the project page in a web browser:
sh
sagoin ProjectName -o
``` Usage: sagoin [OPTIONS] [DIRECTORY]
Arguments: [DIRECTORY] Set the working directory, all commands will be run under this directory
Options:
-n, --no-submit Don't submit the project
-l, --list-files List files without submitting them
-i, --info Show information about the project and exit
-o, --open Open the project page in a web browser
-f, --field -h
for a summary, use --help
for more detail)
-V, --version Print version information
```
Freature | Sagoin | [CommandLineSubmission] | CourseProjectManager Eclipse plugin -|-|-|- Submission | ✓ | ✓ | ✓ Work without Eclipse | ✓ | ✓ | ✗ LDAP authentication | ✓ | ✓ | ✓ OpenID authentication | ✗ | ✓ | ✓ CVS integration | ✗ | ✗ | ✓ CVS ignore | ✗ | ✓ | ✓ Git ignore | ✓ | ✗ | ✗ Custom credential input | ✓ | ✗ | ✗ Open project page | ✓ | ✗ | ✗ Submit hooks | ✓ | ✗ | ✗ Show project information | ✓ | ✗ | ✗
File resolution:
- for unix-like systems: looks for sagoin/config.toml
under XDG configuration directories, e.g. /home/<user>/.config/sagoin/config.toml
- for windows: defaults to {FOLDERID_RoamingAppData}\sagoin\config.toml
, e.g. C:\Users\<user>\AppData\Roaming\sagoin\config.toml
The configuration file is written in TOML. Run sagoin --help
for more information.
```toml
timeformat = "..." username = "..." usernametype = "command | file | text" password = "..." passwordtype = "command | file | text" presubmithook = "..." postsubmithook = "..." clientname = "..." client_version = "..." ```
See CHANGELOG.md
This repository is licensed under GNU Affero General Public License v3.0 or later.