Skip to content

Warning

You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?

Update Coder Template

Actions
An action to deploy changes to your coder template automatically
v3.0.0
Star (28)

Update Coder Template

Update coder templates automatically

Usage

  1. Create a GitHub secret named CODER_SESSION_TOKEN with your coder session token You can generate a long lived session token by running the following command in your browser console while logged into Coder with a Template Admin or Owner role.

      coder token create --lifetime 8760h --name "GitHub Actions"
  2. Create a .github/workflows/push-coder-template.yaml file and use one of the examples below.

Inputs

Name Description Default
url Required The url of coder deployment (e.g. https://dev.coder.com). -
coder_session_token Required The session token of coder. -
id Required The id of template. -
dir Required The directory of the template that contains main.tf file -
name New version name for the template. Autogenerated name by Coder
activate Activate the new template version. true
create Creates a new template if it does not exist true
message Update message (similar to commit messages) -
dry_run Dry run mode. false

Examples

  1. Update a Coder template with the latest commit hash as the version name, commit message as the update message and mark this as active.

    name: Update Coder Template
    
    on:
      push:
        branches:
          - main
    
    jobs:
        update:
            runs-on: ubuntu-latest
            steps:
            - name: Checkout
              uses: actions/checkout@v3
            - name: Get latest commit hash
              id: latest_commit
              run: echo "hash=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
            - name: Get commit title
               id: commit_title
               run: echo "title=$(git log -1 --pretty=%B)" >> $GITHUB_OUTPUT
    
    
            - name: Update Coder Template
                uses: matifali/update-coder-template@v3
                with:
                    id: "my-template"
                    dir: "my-template"
                    url: "https://coder.example.com"
                    name: "${{ steps.latest_commit.outputs.hash }}"
                    message: "${{ steps.commit_title.outputs.title }}"
                    coder_session_token: ${{ secrets.CODER_SESSION_TOKEN }}
  2. Update a Coder template with a random version name without activating.

    name: Update Coder Template
    
    on:
      push:
        branches:
          - main
    
    jobs:
        update:
            runs-on: ubuntu-latest
            steps:
            - name: Checkout
              uses: actions/checkout@v3
    
            - name: Update Coder Template
                uses: matifali/update-coder-template@v3
                with:
                    id: "my-template"
                    dir: "my-template"
                    url: "https://coder.example.com"
                    activate: "false"
                    coder_session_token: ${{ secrets.CODER_SESSION_TOKEN }}

Update Coder Template is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

An action to deploy changes to your coder template automatically
v3.0.0

Update Coder Template is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.