Chronos v3.0.0
Summary of Changes
This is a brand new Chronos, and the first release in more than a year. There have been significant changes, particular with the core scheduling algorithm. Chronos is now built against the Mesos 1.0.1 API, and will work with Mesos 1.0+.
Please note: that this is a significant release, and may include regressions. Please report new issues to the GitHub issue tracker at https://github.com/mesos/chronos/issues.
Internal scheduler rewrite
The internal scheduler code has been rewritten to improve reliability. This rewrite includes new unit tests, and a set of integration tests.
A new web UI
The old Chronos web UI was known to have severe limitations. A new React & ES6 based UI has been written to address this. The new UI is not yet at feature parity with the old UI, but it supports the basic features of adding, removing, editing, starting, and stopping jobs.
API changes
The HTTP REST API has received some updates, including some more idiomatic error responses, and the API paths have changed (they are now prefixed with /v1
). Async jobs have been dropped (no more async
field) as well.
Packaging
Chronos will now only be published as a single Docker image, at http://hub.docker.com/r/mesosphere/chronos. The distribution specific packages are no longer maintained.
Changelog
The full changelog is available from GitHub at: 2.4.0...v3.0.0
Shortlist:
in ~/dev/chronos
± |master ✗| → git shortlog 2.4.0..HEAD | cat
Brad Heller (1):
Drop level of biggest logging offenders. (#687)
Brenden Matthews (99):
Merge pull request #535 from carroux/periods_in_job_names
Merge pull request #539 from potto007/fix-dockerfile-node
Merge pull request #545 from carroux/patch-3
Merge pull request #538 from m1k3/feature/docker-params
Cache maven artifacts with Travis.
Merge pull request #587 from mesos/cache-maven-artifacts
Merge pull request #602 from drexin/wip-drexin-fix-executor-id
Merge pull request #595 from Califax/add-mark-job-successful-api-call
Merge pull request #635 from Califax/remove-schedule-from-scheduled-job-made-dependent
Merge pull request #623 from leemunroe/patch-1
Merge pull request #592 from Rob-Johnson/unlike-constraint
Dependency & Chronos version bump. (#728)
Bump Cassandra driver to 3.1.x. (#729)
Updating chronos build. (#730)
Update build/release code. (#731)
Redo internal scheduling codes. (#734)
New ui (#736)
Minor README edit.
Fix for master build.
Try again with fixing build.
Add container image option to UI. (#737)
Clean up UI packaging. (#738)
Fix webpack config.
Fixes for container stuff in UI. (#739)
Update docs on C* usage. (#743)
Concurrent jobs, added ACE-based job editor. (#742)
Build fixes.
Bump node version.
Set explicit node version.
Add missing bootstrap package.
Fix URL paths.
Fix more paths.
Check status of driver when making Mesos API calls.
Fix for no such element.
Update unit tests.
Implement supervisor for actor system.
Build fix, cache modules.
Handle case of missing taskStatus.
Refactored internal task management.
Link to dcos-vagrant rather than playa-mesos.
Documentation updates.
Remove extra task accounting from JobStats.
Reformat source.
Add another ZK test, fix compiler warning.
Remove download link.
Remove extraneous provides method.
Handle errors w/ JSON editor in UI.
Remove flaky ZK test, fix circular dependency.
Allow more time for ZK test to finish.
Restart the test ZK nodes if they throw an exception.
Adjust ZK test timing.
Better state accounting.
Added JobStats unit test.
Update docs on C* usage. (#743)
Concurrent jobs, added ACE-based job editor. (#742)
Build fixes.
Bump node version.
Set explicit node version.
Add missing bootstrap package.
Fix URL paths.
Fix more paths.
Check status of driver when making Mesos API calls.
Fix for no such element.
Update unit tests.
Implement supervisor for actor system.
Build fix, cache modules.
Handle case of missing taskStatus.
Refactored internal task management.
Link to dcos-vagrant rather than playa-mesos.
Documentation updates.
Remove extra task accounting from JobStats.
Reformat source.
Add another ZK test, fix compiler warning.
Remove download link.
Remove extraneous provides method.
Handle errors w/ JSON editor in UI.
Remove flaky ZK test, fix circular dependency.
Allow more time for ZK test to finish.
Restart the test ZK nodes if they throw an exception.
Adjust ZK test timing.
Better state accounting.
Added JobStats unit test.
Fix build error, style.
Merge branch 'Rob-Johnson-cors-filter'
Use HTTP proxy cache, if available.
Don't allow schedules more than 1 year in the past. (#748)
Update README.md
Bump lz4 version.
Update faq.md
Make sure we don't double-launch jobs. (#750)
Set http_proxy for Docker build. (#751)
Doc updates.
Make sure we don't double-launch jobs. (#752)
Try to make flaky test less flaky.
Permit running tests in parallel.
Set page title, fix indentation.
Improve API error handling. (#753)
Add integration tests. (#754)
Chaozhong Yang (1):
Dedup ScheduleStream by jobName. (#689)
Chris Carroux (5):
Add support for periods in job names
Add test to ensure job names with periods are accepted
Add info for 'lastSuccess' and 'lastError' to docs for listing jobs
Document the job name criteria
Update documentation of job name requirements to include periods
Dario Rexin (2):
Set executor id to job name instead of static value
Add uris to the CommandInfo when a custom executor is set
Dennis (1):
Add support for Mattermost webhooks (#724)
Elizabeth Lingg (1):
Merge pull request #626 from jamesmulcahy/executor-data
Fatih Cetinkaya (1):
Add Chronos Shuttle to tools section
Florian Leibert (2):
Merge pull request #562 from rapidoo/master
Update README.md
Frederic Le Bris (1):
correction #561
Gastón Kleiman (11):
Setting version to 2.5.0-SNAPSHOT
Merge pull request #534 from depay/idlog
Merge pull request #541 from carroux/patch-2
Fix version numbers in the changelog
Add a warning to the README
Merge pull request #572 from rji/fix-api-docs-formatting
Merge pull request #556 from tony-kerz/master
Merge pull request #578 from mesos/documentation/job-listing
Merge pull request #603 from drexin/wip-drexin-add-uris-to-executor
Merge pull request #621 from solarkennedy/constraints_hint
Update README.md to point to #chronos
James Mulcahy (1):
Allow Chronos jobs to override taskInfo data
Ken Sipe (1):
task arguments (#717)
Kevin Johnstone (6):
add markJobSuccessful api call and logic for markJobSuccessAndFireOffDependencies in job scheduler to implement. Pull out logic for getting new job config with incremented success into method. Add unit tests
formatting
formatting
remove schedules from jobs made dependent when previously scheduled
update documentation for marking job successful
update successful call of job to reset dependencies as a job that started normally would
Kyle Anderson (1):
Log a hint that constraints are not met for a task
Lee Munroe (1):
Add link to UX Research capture form
Lukas Loesche (1):
update downloads.mesosphere.io to .com
Marcus Wasner (4):
Fixes #540 - Document Search Endpoint
Fixes #540 - Document Search Endpoint
Fixes #540 - Document Search Endpoint Update
Merge pull request #589 from cmfatih/patch-1
Mateusz Moneta (1):
Allow to authorize with ZooKeepe by zooKeeperAuth. (#727)
Matthew Mead-Briggs (2):
Change default framework name (#703)
Change default framework name (#703)
Michal Olah (3):
adding the ability to specify docker parameters
adding documentation
dropping extra newlines
Orlando Hohmeier (1):
Fix the job listing lastSuccess and error type
Paul Otto (1):
Removed node package as it is a radio package in Debian/Ubuntu. Added symlink /usr/bin/node pointing at /usr/bin/nodejs.
Pavel Martynov (1):
docs: chronos-python client lib (#740)
Peter Kolloch (2):
Merge pull request #551 from mwasn/patch-1
Merge pull request #583 from spacejam/tyler_coverage
Philip Norman (6):
Merge pull request #550 from mesos/gk/add-warning-to-readme
Merge pull request #606 from mesos/fix/597-small-screens
Merge pull request #637 from turb/master
Update changelog.md
Revert bad change to changelog
Merge pull request #644 from lloesche/master
Pierluigi Cau (1):
Prevent jobs list from collapsing in small screens
Rob Johnson (5):
add unlikeconstraint + unit tests
add some docs for unlike constrant
add headers required for CORS
add an api endpoint for getting the current leader (#741)
add an api endpoint for getting the current leader (#741)
Roger Ignazio (1):
fix a formatting issue with api docs
Ryan Eschinger (1):
don't allow proxying requests to self (#497)
Sunil Shah (2):
Add Go client to docs
Merge pull request #586 from mesos/add-go-client
Sylvain Veyrié (3):
Support Mesos fetcher cache (and other options). * Deprecates "uri" option. * Requires Mesos 0.23
Do not allow to have both "uris" (deprecated) and "fetch" (replacement), and return both for compatibility
Formatting (code review)
Tony L. Kerz (1):
[docs:api] add clarity around values available for constraints
Tyler Neely (2):
Add SCoverage for generating test coverage reports.
Document test coverage in contribution guide.
Vineeth Varghese (1):
Added a job's run time and attempt as environment variables exposed to the job (#629)
Vinod Kone (1):
Merge pull request #630 from mesos/gk/update-readme
Yegor Andreenko (1):
Support for username / password credentials for Cassandra (#749)
depay (1):
Add framework ID to log
tony kerz (2):
[pom] bump specs2 (#566)
[constraints] by hostname (#563)