Skip to content

tvarohohlavy/inplace-envsubst-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Example Pipeline

inplace-envsubst-action

Github Action for envsubst of multiple files in place

This action allows you to substitute environment variables in files.

Will replace all $VAR / ${VAR} strings in defined files. Replacement value is taken from Environmental variables if found or empty if not. This defualt behaviour can be overriden by "variables" option listed at the end of this file.

Usage

Single file

deployment.json (BEFORE)

{
  "version": "${VERSION}",
  "instance": "$INSTANCE"
}

ACTION

- uses: tvarohohlavy/[email protected]
  env:
      VERSION: 1.2.3
      INSTANCE: staging
  with:
    files: |
      deployment.json

deployment.json (AFTER)

{
  "version": "1.2.3",
  "instance": "staging"
}

Multiple files

ACTION

- uses: tvarohohlavy/[email protected]
  env:
      VERSION: 1.2.3
      INSTANCE: staging
  with:
    files: |
      deployment.json
      test.json
      apps/Dockerfile

Replace only defined variables

by listing varaibles you want to have replaced you can override default behaviour of envsubst which does replace all found $VAR / ${VAR} string even if there is no matching Environmental variable

ACTION

- uses: tvarohohlavy/[email protected]
  env:
      VERSION: 1.2.3
      INSTANCE: staging
      USER: devops
  with:
    variables: |
      $VERSION
      $INSTANCE
    files: |
      deployment.json
      test.json
      apps/Dockerfile