Filed under: Automation, DevOps, Git, Linux, — Tags: Linux, Unix — Thomas Sundberg — 2020-01-31
The execution flag must be set on a file for it to be possible to be executed as a script on a Linux system.
(more...)Filed under: Automation, Continuous integration, DevOps, — Tags: Jenkins, Jenkins Configuration as Code, jcasc — Thomas Sundberg — 2019-12-23
Configuring Jenkins is not as easy as one might imagine or want. There are some 1500 plugins available. Selecting the proper plugins and then configuring them is a daunting task.
Jenkins configuration as code doesn't solve the selection problem. But it does solve the problem of having a repeatable setup of Jenkins. The setup is version controlled and thus traceable.
Here is an example where I use this this tool chain:
A working example is available at GitHub.
(more...)Filed under: Automation, Continuous integration, DevOps, — Tags: Jenkins, Jenkinsfile, pipeline — Thomas Sundberg — 2019-11-26
I have a situation where I want two jobs in Jenkins to have the same definition. They will run a set of tests against two different environments.
I want to name the jobs so it is obvious which environment they target. My naming schema looks like this:
*-dev
The jobs will therefore be named as:
integration-tests-dev
integration-tests-sys
Filed under: DevOps, Kubernetes, — Tags: --service-node-port-range, kube-apiserver, kubernetes, service-node-port-range — Thomas Sundberg — 2019-02-20
The default node port range for Kubernetes is 30000
- 32767
. As it is a
default, a reasonable assumption would be that it can be changed. So far so good.
However, it turns out that the documentation on how to change the default
is hard to find.
kube-apiserver
The port range is controlled by the kube-apiserver
which is a pod running
inside your Kubernetes cluster. It is created from a pod definition located in
/etc/kubernetes/manifests/kube-apiserver.yaml
.