Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cans/ansible-heroku3
Ansible Module to Manage your Heroku Applications
https://github.com/cans/ansible-heroku3
Last synced: 19 days ago
JSON representation
Ansible Module to Manage your Heroku Applications
- Host: GitHub
- URL: https://github.com/cans/ansible-heroku3
- Owner: cans
- Created: 2016-11-13T23:55:17.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2017-10-08T20:27:37.000Z (over 7 years ago)
- Last Synced: 2024-11-14T20:18:31.900Z (3 months ago)
- Language: Python
- Size: 15.6 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.rst
Awesome Lists containing this project
README
****************
Ansible Heroku 3
****************Manage your Heroku applications with ansible:
- Create and Delete App;
- Configure them;
- Start, Scale and Stop them;Very early work in progress, the documentation very scarce. Look at the
``heroku.yml`` playbook for usage examples.Running the sample playbook
===========================You will also need a file named `credentials.yml` under `vars/` that contains a
variable ``heroku_api_key`` and is set with you very own Heroku API Key
(go to https://dashboard.heroku.com/account to get your key), as well as an
``heroku_application_name`` variable with an application name of your own,
and another ``heroku_existing_application_name`` to try the playbook plays
that assume a pre-existing app.Dependencies
============This module relies on the `herok3.py `_
Python module.TODO
====- Implement the ``apps`` command;
- Retrieve regions dynamically (heroku3.py seems to lack support;
- Add caching to avoid excessive API calls;
- Instead of the ``create`` / ``delete`` commands, implement an ``app``
command that has a ``state`` argument: ``"present"`` meaning create if
not exists, ``"absent"`` delete if exists, code is here, it's just a matter
of reworking the interface;
- Add ability to restart an app (command ``app`` with ``state`` value set
to ``restarted``;
- config command: ``uppercase`` ``yes``/``no`` option is ambiguous, move
for ``case`` ``upper``/``lower``/``asis`` with that last one as default;
- Understand how one is supposed to ship extra modules for Ansible, in a
sensible and user friendly manner;
- Do we need this: manage builds, releases, etc. ?Known limitations
=================Heroku's documentation suggest one can have mixed type of Dynos for a single
application. Never used that and not clear to me how to implement that with
the API (https://devcenter.heroku.com/articles/dyno-types#default-scaling-limits)Credits
=======There is a `similar module `_
available, but the project has not seen much work and uses a deprecated
Python wrapper for Heroku's REST API.