{ "info": { "author": "Yagmur Guraslan", "author_email": "guraslan@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: System Administrators", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Topic :: System :: Systems Administration" ], "description": "stayontop\n===========================================\n\nDevelopment instances on AWS EC2 need to be shutdown off-hours.\n\nThis small project tries to address this need providing a clear config file in yaml.\n\n - You can specify which instances must be stopped/running all the time.\n - By default all instances are set to be stopped off-hours\n - You can set all instances with a specific project tag to be open\n - Assumes office hours are between 07:00 - 19:00\n - Assumes EC2 instance tags: \"project\"\n - Assumes EC2 instance name matches instance tag \"Name\"\n\nA sample config file:\n\n::\n\n global:\n restricted:\n projects:\n - BI\n - CRM\n - PUSHAPP\n keep_running:\n instances:\n - sybase.acme.com\n - hana01.acme.com\n keep_stopped:\n instances:\n - sybase.acme.com\n - hanadyn.acme.com\n - apush.acme.com\n weekend_on:\n projects:\n - BI\n aws_boto_profile: SYS\n\nUse case #1: Please keep FMS project stopped at weekends\n - Do not put it on weekend_on anywhere in the config\n - By default all projects are stopped unless stated otherwise\n - With the following config SAP project instances will be running during weekends\n\n::\n\n global:\n weekend_on:\n projects:\n - SAP\n\n\nUse case #2: I want webdev01 instance to be running this night\n::\n\n date_of_today:\n keep_running:\n instances:\n - webdev01\n\n\nUse case #3: Please keep webdev01 instance stopped on off-hours\n - Unless stated otherwise all instances are stopped on off-hours\n\n\nUse case #4: Please keep dbdev01 instance stopped on working hours\n::\n\n global:\n keep_stopped:\n instances:\n - dbdev01\n\n\nUse case #5: Please keep dbdev01 instance stopped on 29.12.2015\n - Add the following to the config\n - Remove from the global config if necessary\n\n::\n\n 29.12.2015:\n keep_stopped:\n instances:\n - dbdev01\n\n\nRunning\n-----------------------\n\n::\n\n $ git clone stayontop.git\n $ cd stayontop\n $ python setup.py install\n \n $ sudo -u jenkins /usr/bin/stayontop --dryrun project.yml\n Parsed config: {'restricted': ['sky'], 'weekend_on': [], 'keep_running': [], 'keep_stopped':[], 'is_holiday': False, 'aws_boto_profile': 'ecom'}``\n prj-front: running -> stopped\n prj-staged: running -> stopped\n prj-test: running -> stopped\n Nothing is changed(dryrun mode)\n\n $ sudo -u jenkins /usr/bin/stayontop project.yml\n Parsed config: {'restricted': ['sky'], 'weekend_on': [], 'keep_running': [], 'keep_stopped': [], 'is_holiday': False, 'aws_boto_profile': 'ecom'}\n prj-front: running -> stopped\n ....Stopping....\n prj-staged: running -> stopped\n ....Stopping....\n prj-test: running -> stopped\n ....Stopping....\n\n $ sudo -u jenkins /usr/bin/stayontop project.yml\n Parsed config: {'restricted': ['sky'], 'weekend_on': [], 'keep_running': [], 'keep_stopped': [], 'is_holiday': False, 'aws_boto_profile': 'ecom'}\n prj-front: stopped -> stopped\n prj-staged: stopped -> stopped\n prj-test: stopped -> stopped\n\n\n\nNews\n====\n\nadditional restriction with instance environment\nenvironment value will be case-insensitive\n\nrestrict:\n projects:\n - FMS\n environment:\n - dev\n - staged\n - stage\n - test", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/guraslan/stayontop/tarball/0.1a0", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/guraslan/stayontop", "keywords": "stayontop keep stopped aws instances cost effective", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "stayontop", "package_url": "https://pypi.org/project/stayontop/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/stayontop/", "project_urls": { "Download": "https://github.com/guraslan/stayontop/tarball/0.1a0", "Homepage": "https://github.com/guraslan/stayontop" }, "release_url": "https://pypi.org/project/stayontop/0.1a0/", "requires_dist": null, "requires_python": null, "summary": "Keep AWS instances stopped on out of office hours", "version": "0.1a0" }, "last_serial": 1914009, "releases": { "0.1a0": [ { "comment_text": "", "digests": { "md5": "fe61c38cc465ffe1281a55cb02fbd982", "sha256": "d0ed784bec4e23e69bf7a14b2960e746c48c6ef32269b9a9582bd38ebb5fa172" }, "downloads": -1, "filename": "stayontop-0.1a0.tar.gz", "has_sig": false, "md5_digest": "fe61c38cc465ffe1281a55cb02fbd982", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4698, "upload_time": "2016-01-20T21:18:12", "url": "https://files.pythonhosted.org/packages/57/dc/3c9095c7b763248a799044201a2e1c2cb3026cf3c829bf80c78510e65cd1/stayontop-0.1a0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fe61c38cc465ffe1281a55cb02fbd982", "sha256": "d0ed784bec4e23e69bf7a14b2960e746c48c6ef32269b9a9582bd38ebb5fa172" }, "downloads": -1, "filename": "stayontop-0.1a0.tar.gz", "has_sig": false, "md5_digest": "fe61c38cc465ffe1281a55cb02fbd982", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4698, "upload_time": "2016-01-20T21:18:12", "url": "https://files.pythonhosted.org/packages/57/dc/3c9095c7b763248a799044201a2e1c2cb3026cf3c829bf80c78510e65cd1/stayontop-0.1a0.tar.gz" } ] }