mirror of
https://github.com/Azure/k8s-deploy.git
synced 2026-04-03 02:42:17 +08:00
* Add missing API switch for GHES (#200) * Vidya reddy/prettier code (#203) * switch none deployment strategy to basic (#204) * switch none deployment strategy to basic * update readme * update deployment strategy fallthrough logic * comment fixed * add disclaimer for basic strategy only supporting deploy action * Hari/beautify logs (#206) * Logging changes for deploy * Logging Changes with group * format check changes * Add ncc build to build script (#208) Co-authored-by: Vidya Reddy <vidyareddy@microsoft.com> * Logging Changes for Promote, Reject actions (#207) * add clean function (#211) * Added Traffic split annotations (#215) * Added Traffic split annotations * traffic split - blueGreen deployment * traffic split - canary deployment * Traffic split annotations - canary deployment * updated Readme and action.yml * Traffic split - canary deployment * clean code * Clean code * Clean code * Create annotation object * Updated Readme and action.yml * Spelling correction Co-authored-by: Vidya Reddy <vidyareddy@microsoft.com> * Swap annotation key to actions.github.com prefix (#216) * Private Cluster functionality (#214) * Fixed Blue/Green Strategy Ingress Route-Method Glitch (#217) * Added some tests, not sure what else to try but gonna think of more examples * forgot some files * reverted package-lock.json * Added empty dir test * Cleaned up some extra spaces * Add node modules and compiled JavaScript from main * forgot to actually include functionality * removed unnecessary files * Update .gitignore * Update .gitignore * Update .gitignore * thx david * renamed searchFilesRec * integrations test fix * added examples to README * added note about depth * added additional note * removed ticks * changed version string * removed conflict on readme * Added tests for bluegreen helper and resolved issue with ingress not being read correctly, still have to figure out why new services aren't showing up * resolved services name issue * looks functional, beginning refactor now * refactored deploy methods for type error * Removed refactor comments * prettier * implemented Oliver's feedback * prettier * added optional chaining operator * removed refactor comment Co-authored-by: Jaiveer Katariya <jaiveerkatariya@Jaiveers-MacBook-Pro.local> Co-authored-by: Oliver King <oking3@uncc.edu> Co-authored-by: Jaiveer Katariya <jaiveerkatariya@Jaiveers-MBP.lan> * Add node modules and compiled JavaScript from main Co-authored-by: nv35 <76777923+nv35@users.noreply.github.com> Co-authored-by: Vidya <59590642+Vidya2606@users.noreply.github.com> Co-authored-by: David Gamero <david340804@gmail.com> Co-authored-by: Hariharan Subramanian <105889062+hsubramanianaks@users.noreply.github.com> Co-authored-by: Vidya Reddy <vidyareddy@microsoft.com> Co-authored-by: Oliver King <oking3@uncc.edu> Co-authored-by: Marcus-Hines <marcus.chris.hines@gmail.com> Co-authored-by: Jaiveer Katariya <35347859+jaiveerk@users.noreply.github.com> Co-authored-by: Jaiveer Katariya <jaiveerkatariya@Jaiveers-MacBook-Pro.local> Co-authored-by: Jaiveer Katariya <jaiveerkatariya@Jaiveers-MBP.lan>
81 lines
3.4 KiB
YAML
81 lines
3.4 KiB
YAML
name: 'Deploy to Kubernetes cluster'
|
|
description: 'Deploy to a Kubernetes cluster including, but not limited to Azure Kubernetes Service (AKS) clusters'
|
|
inputs:
|
|
# Please ensure you have used either azure/k8s-actions/aks-set-context or azure/k8s-actions/k8s-set-context in the workflow before this action
|
|
# You also need to have kubectl installed (azure/setup-kubectl)
|
|
namespace:
|
|
description: 'Choose the target Kubernetes namespace. If the namespace is not provided, the commands will run in the default namespace.'
|
|
required: false
|
|
manifests:
|
|
description: 'Path to the manifest files which will be used for deployment.'
|
|
required: true
|
|
images:
|
|
description: 'Fully qualified resource URL of the image(s) to be used for substitutions on the manifest files Example: contosodemo.azurecr.io/helloworld:test'
|
|
required: false
|
|
imagepullsecrets:
|
|
description: 'Name of a docker-registry secret that has already been set up within the cluster. Each of these secret names are added under imagePullSecrets field for the workloads found in the input manifest files'
|
|
required: false
|
|
pull-images:
|
|
description: "Switch whether to pull the images from the registry before deployment to find out Dockerfile's path in order to add it to the annotations"
|
|
required: false
|
|
default: true
|
|
strategy:
|
|
description: 'Deployment strategy to be used. Allowed values are basic, canary and blue-green'
|
|
required: true
|
|
default: 'basic'
|
|
route-method:
|
|
description: 'Route based on service, ingress or SMI for blue-green strategy'
|
|
required: false
|
|
default: 'service'
|
|
version-switch-buffer:
|
|
description: 'Indicates the buffer time in minutes before the switch is made to the green version (max is 300 min ie. 5hrs)'
|
|
required: false
|
|
default: 0
|
|
traffic-split-method:
|
|
description: 'Traffic split method to be used. Allowed values are pod and smi'
|
|
required: false
|
|
default: 'pod'
|
|
traffic-split-annotations:
|
|
description: 'Annotations in the form of key/value pair to be added to TrafficSplit. Relevant only if deployement strategy is blue-green or canary'
|
|
required: false
|
|
baseline-and-canary-replicas:
|
|
description: 'Baseline and canary replicas count. Valid value between 0 to 100 (inclusive)'
|
|
required: false
|
|
default: 0
|
|
percentage:
|
|
description: 'Percentage of traffic redirect to canary deployment'
|
|
required: false
|
|
default: 0
|
|
action:
|
|
description: 'deploy, promote, or reject'
|
|
required: true
|
|
default: 'deploy'
|
|
force:
|
|
description: 'Deploy when a previous deployment already exists. If true then --force argument is added to the apply command'
|
|
required: false
|
|
default: false
|
|
token:
|
|
description: 'Github token'
|
|
default: ${{ github.token }}
|
|
required: true
|
|
annotate-namespace:
|
|
description: 'Annotate the target namespace'
|
|
required: false
|
|
default: true
|
|
private-cluster:
|
|
description: 'True if cluster is AKS private cluster'
|
|
required: false
|
|
default: false
|
|
resource-group:
|
|
description: 'Name of resource group - Only required if using private cluster'
|
|
required: false
|
|
name:
|
|
description: 'Resource group name - Only required if using private cluster'
|
|
required: false
|
|
|
|
branding:
|
|
color: 'green'
|
|
runs:
|
|
using: 'node16'
|
|
main: 'lib/index.js'
|