Ufo Task Params
You can run one off task with the ufo task command.
ufo task commands:
- Builds the docker image
- Registers the ECS task definition
- Runs the command
The params that ufo sends to the ruby aws-sdk methods to for the one off task can be customized with a
params.yml file. This allows you use the full power of the aws-sdk.
A starter project
.ufo/params.yml file is generated as part of the
ufo init command. Let’s take a look at an example
# These params are passsed to the corresponding aws-sdk ecs client methods. # AWS Docs example: https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECS/Client.html#run_task-instance_method # # The network helper provides access to the .ufo/settings/network/[PROFILE].yml # # More docs: http://ufoships.com/docs/params/ # ufo task calls run_tasks run_task: # network_configuration is required for FARGATE network_configuration: awsvpc_configuration: subnets: <%= network[:ecs_subnets].inspect %> # required security_groups: <%= network[:ecs_security_groups].inspect %> assign_public_ip: "ENABLED" # accepts ENABLED, DISABLED
Ufo provides 1st class citizen access to adjust the params sent to the aws-sdk calls:
ERB and shared variables are available in the params file. You can also define the subnets in your config/variables and use them in them in the params.yml file.
Note, the params.yml file does not have access to the
task_definition_name helper method. That is only available in the
task_definitions.rb template_definition code blocks.
Pro tip: Use the <- and -> arrow keys to move back and forward.