Skip to content

Commit

Permalink
Merge branch 'master' of github.com:waterbear-cloud/paco
Browse files Browse the repository at this point in the history
  • Loading branch information
kteague committed Jan 12, 2021
2 parents 5c6a0a3 + 7bdfb81 commit 624befe
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 13 deletions.
23 changes: 10 additions & 13 deletions src/paco/application/reseng_deploymentpipeline.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,16 +73,12 @@
done
# Remove json that is invalid for 'aws ecs register-task-definition'
#echo sed -iE 's/^{$//' ${TEMP_FILE}
sed -iE 's/^{$//' ${TEMP_FILE}
#echo sed -iE 's/^.*"taskDefinition": {.*/{/' ${TEMP_FILE}
sed -iE 's/^.*"taskDefinition": {.*/{/' ${TEMP_FILE}
#echo sed -iE 's/^}$//' ${TEMP_FILE}
sed -iE 's/^}$//' ${TEMP_FILE}
# Create new task definition
FAMILY="paco-release-phase-"$(echo ${RELEASE_PHASE_NAME} | tr '.' '-')
#echo aws ecs register-task-definition --family ${FAMILY} --cli-input-json file://${TEMP_FILE}
echo "${ECHO_PREFIX}: register_task_definition: registering: ${FAMILY}"
TASK_DEFINITION_ARN=$(aws ecs register-task-definition --family ${FAMILY} --cli-input-json file://${TEMP_FILE} --query "taskDefinition.taskDefinitionArn" --output text)
Expand Down Expand Up @@ -163,17 +159,18 @@
# -----------------------------
# Task Docker Exec
function task_docker_exec() {
local CLUSTER_ID=$1
local CLUSTER_ID=$1
local TASK_ID=$2
local ECS_INSTANCE_ID=$3
local RELEASE_PHASE_COMMAND=$4
local RELEASE_PHASE_COMMAND="$4"
RES=0
echo "${ECHO_PREFIX}: task_docker_exec: command start: ${TASK_ID}"
echo "${ECHO_PREFIX}: task_docker_exec: command: ${RELEASE_PHASE_COMMAND}"
echo "${ECHO_PREFIX}: task_docker_exec: Instance Id: ${ECS_INSTANCE_ID}"
TASK_DOCKER_ID=$(aws ecs describe-tasks --cluster ${CLUSTER_ID} --tasks ${TASK_ID} --query 'tasks[0].containers[0].runtimeId' --output text)
# echo aws ssm send-command --instance-ids ${ECS_INSTANCE_ID} --document-name paco_ecs_docker_exec --parameters TaskId=${TASK_DOCKER_ID},Command=${RELEASE_PHASE_COMMAND} --query 'Command.CommandId' --output text
COMMAND_ID=$(aws ssm send-command --instance-ids ${ECS_INSTANCE_ID} --document-name paco_ecs_docker_exec --parameters TaskId=${TASK_DOCKER_ID},Command=${RELEASE_PHASE_COMMAND} --query 'Command.CommandId' --output text)
echo aws ssm send-command --instance-ids ${ECS_INSTANCE_ID} --document-name paco_ecs_docker_exec --parameters TaskId=${TASK_DOCKER_ID},Command="${RELEASE_PHASE_COMMAND}" --query 'Command.CommandId' --output text
COMMAND_ID=$(aws ssm send-command --instance-ids ${ECS_INSTANCE_ID} --document-name paco_ecs_docker_exec --parameters TaskId=${TASK_DOCKER_ID},Command="${RELEASE_PHASE_COMMAND}" --query 'Command.CommandId' --output text)
#echo "${ECHO_PREFIX}: task_docker_exec: COMMAND_ID: ${COMMAND_ID}"
while :
Expand All @@ -192,9 +189,9 @@
fi
COMMAND_STATUS_DETAILS="$(echo $COMMAND_STATE | jq -r '.StatusDetails')"
#echo "${ECHO_PREFIX}: task_docker_exec: COMMAND_STATUS_DETAILS: ${COMMAND_STATUS_DETAILS}"
echo "${ECHO_PREFIX}: task_docker_exec: COMMAND_STATUS_DETAILS: ${COMMAND_STATUS_DETAILS}"
COMMAND_STDOUT="$(echo $COMMAND_STATE | jq -r '.StandardOutputContent')"
#echo "${ECHO_PREFIX}: task_docker_exec: COMMAND_STDOUT: ${COMMAND_STDOUT}"
echo "${ECHO_PREFIX}: task_docker_exec: COMMAND_STDOUT: ${COMMAND_STDOUT}"
if [ "${COMMAND_STATUS}" == "Failed" ] ; then
COMMAND_STDERR="$(echo $COMMAND_STATE | jq -r '.StandardErrorContent')"
Expand Down Expand Up @@ -236,7 +233,7 @@
run_task ${CLUSTER_ID} ${RELEASE_PHASE_NAME}
# 4. Execute the release phase script
task_docker_exec ${CLUSTER_ID} ${TASK_ID} ${ECS_INSTANCE_ID} ${RELEASE_PHASE_COMMAND}
task_docker_exec ${CLUSTER_ID} ${TASK_ID} ${ECS_INSTANCE_ID} "${RELEASE_PHASE_COMMAND}"
EXEC_RES=$?
# 5. stop the task
Expand Down Expand Up @@ -872,7 +869,7 @@ def codebuild_ecs_release_phase_ssm(self):
"name": "ECSTaskDockerExec",
"inputs": {
"runCommand": [
'/usr/bin/docker exec {{TaskId}} "{{Command}}"',
'/usr/bin/docker exec {{TaskId}} {{Command}}',
]
}
}
Expand Down
1 change: 1 addition & 0 deletions src/paco/cftemplates/ecs.py
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,7 @@ def __init__(self, stack, paco_ctx, task_execution_role):
# Services
for service in ecs_config.services.values():
service_dict = service.cfn_export_dict
service_dict['EnableECSManagedTags'] = True
service_dict['Cluster'] = troposphere.Ref(cluster_name_param)
cfn_service_name = self.create_cfn_logical_id('Service' + service.name)

Expand Down

0 comments on commit 624befe

Please sign in to comment.