Last active
August 5, 2020 07:45
-
-
Save rummelonp/bbeced96052c06656619722be1b68631 to your computer and use it in GitHub Desktop.
eb deploy と eb setenv を同時にやるラッパースクリプト
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
import argparse | |
from ebcli.core import fileoperations, io | |
from ebcli.lib import aws, elasticbeanstalk, utils | |
from ebcli.operations import commonops, envvarops | |
try: | |
parser = argparse.ArgumentParser(usage='deploy [environment_name] [--revision REVISION] [--timeout TIMEOUT]') | |
parser.add_argument('environment_name', action='store', nargs='?', default=None, type=str) | |
parser.add_argument('--revision', action='store', default=None, type=str, help='application revision') | |
parser.add_argument('--timeout', action='store', default=10, type=int, help='timeout period in minutes') | |
args = parser.parse_args() | |
aws.set_profile(commonops.get_default_profile()) | |
aws.set_region(commonops.get_default_region()) | |
app_name = fileoperations.get_application_name() | |
env_name = args.environment_name | |
revision = args.revision | |
timeout = args.timeout | |
if env_name is None: | |
env_name = commonops.get_current_branch_environment() | |
if revision is None: | |
revision = utils.exec_cmd_quiet(['git', 'rev-parse', '--short', 'HEAD']).strip() | |
version_label = commonops.create_app_version(app_name, label=revision, process=True) | |
var_list = ['='.join(['REVISION', revision])] | |
options, _ = envvarops.create_environment_variables_list(var_list) | |
response = elasticbeanstalk._make_api_call('update_environment', | |
EnvironmentName=env_name, | |
VersionLabel=version_label, | |
OptionSettings=options) | |
request_id = response['ResponseMetadata']['RequestId'] | |
commonops.wait_for_success_events(request_id, timeout_in_minutes=timeout, can_abort=True) | |
except KeyboardInterrupt: | |
exit(1) | |
except Exception as e: | |
io.log_error(e.__class__.__name__ + ' - ' + str(e)) | |
exit(1) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
awsebcli==3.18.2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment