Skip to content

Releases: HomeDevopsLab/appchart

2.7.0

28 Dec 15:14
0b19edc

Choose a tag to compare

Added

SecurityContext

Adding k8s securityContext support. https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
Helpful, when certain app running inside a pod needs additional privileges.

securityContext:
  runAsNonRoot: true
  runAsUser: 1000
  capabilities:
    add: ["IPC_LOCK"]

ConfigMap

With this version you can attach custom configMap object to helmrelease file

app configmap example

apiVersion: v1
kind: ConfigMap
metadata:
  name: nginx-conf
  namespace: default
data:
  nginx.conf: |
     worker_processes 1;
     daemon off;
     error_log nginx_error.log;
     events {
         worker_connections 1024;
     }

    http {
       server {
         listen 8008;

         location / {
            root /Users/bsergean/src/sandbox/json/jsoncpp;
         }
       }
    }

HelmRelease fragment example:

values:
   configMap:
       name: nginx-conf
       mountPath: /etc/nginx.conf

2.6.1

15 Feb 10:23
29c7ecd

Choose a tag to compare

What's Changed

Full Changelog: 2.6.0...2.6.1

2.6.0

19 Oct 05:53
200c507

Choose a tag to compare

Probes configuration (livenessProbe and startupProbe)

This change resolves issue #7, where some applications failed to start due to overly restrictive probe configurations. The problem was addressed by moving the startupProbe and livenessProbe sections directly into the HelmRelease files of specific applications. The Helm chart now imports this configuration to create the deployment objects.

Example

startupProbe:
  httpGet:
    path: /
    port: 666
  failureThreshold: 30
  periodSeconds: 10
livenessProbe:
  tcpSocket:
    port: 666
  initialDelaySeconds: 10
  periodSeconds: 2

More info on: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/

Pre hook: initWebsiteDir

In some situations hook returned non 0 status code, so applications deployment was distrupted. This was fixed by checking if application directory exists.

2.5.0

01 Sep 06:26
e8e033b

Choose a tag to compare

Use case

In some cases there's a need to share common shared storage space among more than one app or different app instances (i.e. server and worker instances). To solve this problem a new option was introduced: rootDir
This change was introduced in #9 issue.

How to use

rootDir configuration

values:
  volumes:
    rootDir: common

This parameter is optional, so when no rootDir is specified, than HelmRelease name will be used to create parent folder on shared storage.

2.4.0

24 Aug 12:11
085d520

Choose a tag to compare

Liveness Probe

Ability to enable liveness probe on specified port. Liveness probes are TCP type

Hardcoded setup

initialDelaySeconds: 10
  periodSeconds: 2

Tolerations

When certain cluster node is not available

node.kubernetes.io/unreachable
node.kubernetes.io/not-ready

Pod should be killed and deployed on healthy node after 10 sec.

LoadBalancer

Ability to specify IP Address to be used in certain service.

Example

values:
   services:
     - name: ssh
        type: LoadBalancer
        protocol: "TCP"
        loadBalancerIP: 10.0.0.100

2.3.0

05 Aug 05:28
e36251c

Choose a tag to compare

Changed

  • removed liveness probes
  • redefined startup probes

Added

  • private container registries support (imagePullSecrets)
  • support of multiple ingresses to single deployment

Container commands

11 Aug 05:26
a3632b1

Choose a tag to compare

Added option to run containers with custom commands and args.

image:
  repository: imagename
  tag: version
  command: 
    - "cmd.sh"
  args: 
    - "cmdarg"

Service Protocol Family

27 Jul 19:36
a87ddab

Choose a tag to compare

Added variable protocol in Values.services specitication. This allows to choose between protocol family which is used by application (i.e. named port 53)