Update an ECS Service

Use Duplo to update a Service container from Github Actions

Update the docker image for a service

The goal of this section is to show how you can update the docker image for an ECS service, after you have built that image. This task can be achieved using the duplocloud/actions/update-image action.

Example Workflow

This example makes some assumptions:

  • Your workflow already has a build job - we created one in the previous section

  • Your build job declares an output named image - also done in the previous section

To use it you will need to ensure your GHA Environment has the following:

  • DUPLO_HOST env var

  • DUPLO_TENANT env var

  • DUPLO_TOKEN env var

You need to change the service name below from my-service to the name of your actual service.

name: Update Service

on: 
  workflow_dispatch:
    inputs:
      environment:
        description: The environment to deploy to
        type: environment
        default: dev
        required: true
      image:
        description: The full image
        type: string
        required: true

jobs:
  update_service:
    name: Update Service
    runs-on: ubuntu-latest
    environment: 
      name: ${{ inputs.environment }}
    env:
      DUPLO_TOKEN: ${{ secrets.DUPLO_TOKEN }}
      DUPLO_HOST: ${{ vars.DUPLO_HOST  }}
      DUPLO_TENANT: ${{ vars.DUPLO_TENANT }}
    steps: 
    
    # install and login to the cloud
    - name: Duplo Setup
      uses: v0.0.5
      # only required on gcp and azure
      with:
        account-id: ${{ vars.CLOUD_ACCOUNT }}
        credentials: ${{ secrets.CLOUD_CREDENTIALS }}

    # uses duploctl from above
    - name: Update Service
      uses: duplocloud/actions/update-image@v0.0.5
      with:
        name: my-service
        image: ${{ inputs.image }}
        type: ecs

Last updated

Logo

© DuploCloud, Inc. All rights reserved. DuploCloud trademarks used herein are registered trademarks of DuploCloud and affiliates