{"id":21966978,"url":"https://github.com/icsnju/apt-mesos","last_synced_at":"2026-04-18T11:01:50.433Z","repository":{"id":142408614,"uuid":"49553990","full_name":"icsnju/apt-mesos","owner":"icsnju","description":" A Mesos Framework which provides an easy way to build job environment and schedule tasks in a multi-node cluster, written in Go.","archived":false,"fork":false,"pushed_at":"2018-12-16T05:56:59.000Z","size":20399,"stargazers_count":1,"open_issues_count":3,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-22T21:47:34.359Z","etag":null,"topics":["golang","mesos","mesos-framework"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/icsnju.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-01-13T06:20:19.000Z","updated_at":"2018-12-17T10:32:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"78f4c42f-736d-4184-9d6f-7c41bfb99a3b","html_url":"https://github.com/icsnju/apt-mesos","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/icsnju/apt-mesos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icsnju%2Fapt-mesos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icsnju%2Fapt-mesos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icsnju%2Fapt-mesos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icsnju%2Fapt-mesos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/icsnju","download_url":"https://codeload.github.com/icsnju/apt-mesos/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icsnju%2Fapt-mesos/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259561879,"owners_count":22876902,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["golang","mesos","mesos-framework"],"created_at":"2024-11-29T13:19:30.155Z","updated_at":"2026-04-18T11:01:45.379Z","avatar_url":"https://github.com/icsnju.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# apt-mesos\n\n[![Travis](https://img.shields.io/travis/icsnju/apt-mesos/master.svg)](https://travis-ci.org/icsnju/apt-mesos)\n\nApt-Mesos is a Mesos Framework for Testing which provides an easy way to build testing environment and schedule testing tasks in a multi-node cluster.\n\nThe latest version is 0.2.0, which support:\n* Use RESTful API to submit, list, delete, kill tasks\n* Measure cluster's metrics(`cpus`, `mem`, `disk`)\nOther features will be added in later versions.\n* WEBUI (updated on version 0.2.0)\n\n## Prerequisites\n* golang (nessesary)\n* vagrant\n* VirtualBox\n* vagrant plugins\n\t* vagrant-omnibus `$ vagrant plugin install vagrant-omnibus`\n\t* vagrant-berkshelf `$ vagrant plugin install vagrant-berkshelf`\n\t* vaggrant-hosts `$ vagrant plugin install vagrant-hosts`\n\n**Note:** You should build a `Mesos` environment first. We provide `Vagrantfile` and some scripts to help you build `Mesos Cluster` easily (thanks to [everpeace/vagrant-mesos](https://github.com/everpeace/vagrant-mesos)), or you can use [playa-mesos](https://github.com/mesosphere/playa-mesos) to build `Mesos Standalone` .\n\n## Installation\n\n### Compile source code\n\n```\n$ go get github.com/icsnju/apt-mesos\n$ cd $GOPATH/src/github.com/icsnju/apt-mesos\n$ go build\n```\n\n### Build Mesos cluster\n\n```\n$ cd vagrant\n$ vagrant up\n```\n\n## Usage\n\n### Start server\n\n```\n$ ./apt-mesos --master=\u003cmesos_addr\u003e --addr=\u003cserver_listened_addr\u003e\n```\n\n### AM WebUI\n\nOpen your browser and visit `http://\u003cserver_listened_addr\u003e`, then you can create a task easily and fetch the test results.\n\n### Submit a task:\n\n```\n$ curl -X POST -H \"Accept: application/json\" -H \"Content-Type: application/json\" \u003cserver_listened_addr\u003e/api/tasks -d@task.json\n```\n\n### Task format\n\n```\n{\n    \"cmd\": \"sh /data/ping.sh\",\n    \"cpus\": \"1\",\n    \"mem\": \"16\",\n    \"docker_image\": \"busybox\",\n    \"volumes\": [\n        {\n            \"container_path\":\"/data\",\n            \"host_path\":\"/vagrant\"\n        }\n    ]\n}\n```\n\n### Complete usage:\n\n```\nUsage of ./apt-mesos:\n  -addr string\n    \tAddress to listen on \u003cip:port\u003e (default \"127.0.0.1:3030\")\n  -debug\n    \tRun in debug mode\n  -master string\n    \tMaster to connect to \u003cip:port\u003e (default \"127.0.0.1:5050\")\n```\n\n### Hack the WEBUI\n\nWe provide a simple WEBUI, welcome to fork the code [https://github.com/JetMuffin/sher-frontend](https://github.com/JetMuffin/sher-frontend) and contribute to this project!\n## Contributors\n[JetMuffin](https://github.com/JetMuffin)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficsnju%2Fapt-mesos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ficsnju%2Fapt-mesos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficsnju%2Fapt-mesos/lists"}