Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Taints and Tolerations #22

Merged
merged 5 commits into from
Sep 29, 2020
Merged

Add Taints and Tolerations #22

merged 5 commits into from
Sep 29, 2020

Conversation

fridim
Copy link
Contributor

@fridim fridim commented Sep 28, 2020

This is a big change, not intentionally intended

It originally started by adding the Taint & Toleration feature to AgnosticS.

  • Update README: mention Config Git repository, add example
  • Fix ansible example to use the scheduler
  • Add API_ADDR and CONSOLE_ADDR environment variables to configure the
    listening address of both servers.
  • Add a watcher to synchronize taints on the different frontends, using Redis.
  • Bump API version to 1.0.2
  • Add API endpoints to manipulate Taints (POST/DELETE)
  • Add 3 different ways to delete Taints:
    • by using the body with a POST method
    • by using the index of the taint in the cloud (DELETE /taint/{cloudName}/{taintIndex})
    • by deleting all taints from a cloud (DELETE /taints/{cloudName})
  • Improve swagger: add examples
  • Add Toleration object definition to swagger
  • Rename local variables to meaningful names instead of short names like 't'
  • Add policy to configuration (git repo). The scheduler looks for
    policy.yaml file that describes the behavior of the scheduler. It
    is similar to the OpenShift scheduler policy configmap.
  • Update unit tests to work with the new structure ([]Taint instead of map[string]Taint)
  • New object in Redis: taints. Index them by cloud name and save them as
    JSON. Notify other frontends on the taintMQ channel when a change happens.
  • All predicates and priorities functions now take []cloud and not a
    map. They should be identical so the order can be changed in the
    policy.yaml config indifferently.
  • Update console CSS, small cosmetic changes

This is a big change.

It originally started by adding the Taint & Toleration feature to AgnosticS.

- Update README: mention Config Git repository, add example
- Fix ansible example to use the scheduler
- Add API_ADDR and CONSOLE_ADDR environment variables to configure the
  listening address of both servers.
- Add a watcher to synchronize taints on the different frontends, using Redis.
- Bump API version to 1.0.2
- Add API endpoints to manipulate Taints (POST/DELETE)
- Add 3 different ways to delete Taints:
  - by using the body with a POST method
  - by using the index of the taint in the cloud (`DELETE /taint/{cloudName}/{taintIndex}`)
  - by deleting all taints from a cloud (`DELETE /taints/{cloudName}`)
- Improve swagger: add examples
- Add Toleration object definition to swagger
- Rename local variables to meaningful names instead of short names like 't'
- Add *policy* to configuration (git repo). The scheduler looks for
  `policy.yaml` file that describes the behavior of the scheduler. It
  is similar to the OpenShift scheduler policy configmap.
- Update unit tests to work with the new structure (`[]Taint` instead of `map[string]Taint`)
- New object in Redis: taints. Index them by cloud name and save them as
  JSON. Notify other frontends on the taintMQ channel when a change happens.
- All predicates and priorities functions now take `[]cloud` and not a
  map. They should be identical so the order can be changed in the
  `policy.yaml` config indifferently.
- Update console CSS, small cosmetic changes.
@fridim fridim changed the title [WIP] Taints & Tolerations Add Taints and Tolerations Sep 28, 2020
@fridim fridim merged commit 7ccafb4 into master Sep 29, 2020
@fridim fridim deleted the taints-tolerations branch September 29, 2020 18:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant