Update a Kubernetes 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 a Kubernetes 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 - buildjob - we created one in the previous section
- Your - buildjob 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_HOSTenv var
- DUPLO_TENANTenv var
- DUPLO_TOKENenv 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: 
      # 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/[email protected]
      with:
        name: my-service
        image: ${{ inputs.image }}
        type: serviceLast updated
Was this helpful?

