This GitHub Action substitutes the values of environment variables using envsubst. This Action is provided as a Docker action, so it works only on Linux machines. For more information on types of actions, see the actions documentation
Create a workflow .yml
file in your .github/workflows
directory.
An example workflow is available below.
For more information, reference the GitHub Help Documentation for Creating a workflow file.
input
: Path to the input fileoutput
: Path to the output file
name: Deploy app to Kubernetes
on:
push:
branch:
- master
jobs:
deploy:
name: Deploy app to Kubernetes
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Build and Push Docker image
run: ./scripts/image
env:
IMAGE_TAG: gcr.io/myprj/app:${{ github.sha }}
- name: Render Deployment YAML
uses: nowactions/envsubst@v1
with:
input: ./deployment.yaml.tmpl
output: ./deployment.yaml
env:
IMAGE_TAG: gcr.io/myprj/app:${{ github.sha }}
REPLICAS: 3
- name: Deploy
run: kubectl apply -f ./deployment.yaml
- Bump up the version in Dockerfile
- Commit the changes
- Run
make release