Skip to content

Releases: Ragin-LundF/k8s-jcasc-management-go

Release 3.6.0

30 Jul 10:21
f080f94
Compare
Choose a tag to compare

Library updates

  • Update of all dependencies to the latest versions.
  • Min. GoLang Version is 1.22.5

Release 3.5.0

08 Aug 11:37
0f80f9b
Compare
Choose a tag to compare
  • Update of all dependencies
  • Minimal GoLang version is now 1.20

Release 3.4.0

22 Jan 00:06
a02b719
Compare
Choose a tag to compare

Library updates

  • Update of all dependencies to the latest versions.

Release 3.3.0

12 Aug 16:01
f972a3a
Compare
Choose a tag to compare

Bugfixes

  • Fixed issue with old deploy only nginx value files #48
  • Fixed issue with reduced project config files for Nginx deploy only. Now only the nginx and base config is still required. #47

Library Updates

  • Updated the base libraries to current versions

Release 3.2.0

22 Jun 16:11
82bf2da
Compare
Choose a tag to compare

Configuration to keep temporary files

Now it is possible to set a configuration to keep the temporary files for the configuration deployments.
The configuration can be set in the main or in the project configuration:

k8sManagement:
  # keep generated temporary files
  keepGeneratedTemplates: false

(see config/k8s_jcasc_mgmt.yaml)

To avoid to check those files in, please add the following line to your .gitignore

__k8smgmt__*

Bugfixes

There was a path error for the migration assistant, which should be fixed now.

Release 3.1.0

19 May 21:42
65c8cd4
Compare
Choose a tag to compare

3.1.0

Bugfixes

  • The uninstall was unable to load the configuration, which made it impossible to uninstall only namespaces for deployment.
  • In Jenkins there were changes in the charts regarding the mode and the label for the controller.

The jcasc_config.yaml files in the templates directory and in the project directories must start with this:

jenkins:
  systemMessage: "{{ .JCasc.SystemMessage }}"
  labelString: "{{ .JenkinsHelmValues.Controller.CustomJenkinsLabels }}"
  mode: "EXCLUSIVE"
  • labelString defines the old custom Jenkins label to allow the controller to execute the seed job.
  • mode was also set in the jenkins_helm_values.yaml, but is now also required in the JCasC configuration.

Release 3.0.0

05 May 06:49
ca6acf3
Compare
Choose a tag to compare

3.0.0

Introducing better template placeholder

The previous versions were still fully compatible with the deprecated bash version.
With version 3.0.0 this compatibility is no longer given.

The new template system is based on Golang templates (https://golang.org/pkg/text/template/) and allows a more flexible use, as well as the usual template/placeholder syntax from the Kubernetes environment.

Migration

The migration is described under docs/migration/MigrateV2_to_V3.md.

Placeholder documentation

Furthermore, the new placeholders are fully documented in docs/TemplatePlaceholder.md and the further linked files.

Refactored Project Generation

The "Create Project" area has also been completely redesigned under the hood.
It now relies on a complete project structure instead of individual variables and substructures and associated methods that operate on this structure.

This is also used for the placeholders and associated methods that work on this structure.

This change was urgently needed to add more features like configuration-based deployments (instead of creating the project-specific YAML files) or deploying the tool as a central instance in a Docker container.

New configuration file per project

Every project stores now the original configuration as k8s_jcasc_project_config.yaml.
This allows deploying applications directly from the configuration with the latest templates.
The tool checks if there are some value files available.
If this is not the case, it generates them temporarily from the configuration and deletes them after a successful deployment.

The skippable files are:

  • jenkins_helm_values.yaml
  • nginx_ingress_helm_values.yaml
  • pvc_claim.yaml

New input field for additional Namespaces

Additional namespaces are now supported in the UI and the CLI version.
Multiple namespaces can be added comma separated.

2.9.0 Small improvements and dependency updates

17 Feb 17:34
e423406
Compare
Choose a tag to compare

Dependency updates

This release updates the base libraries.
Mainly fyne.io to 2.0.0.

Bugfixes

Fixed a minor bug where the GUI does not initially display the namespace dropdown.

Improvements

There is a new option to add a domain for the load balancers.
Domains can be used in the templates with the placeholder "##JENKINS_URL##".

It contains also a description of the current available placeholders under docs/TemplatePlaceholders.md

Release 2.8.1 - Small fixes and improvements

09 Dec 07:56
c8e3f63
Compare
Choose a tag to compare

This release fixes 2 issues:

  • Wrong path detection under *nix / macOS
  • Quoted DNS annotations

Release 2.8.0 - Support for external DNS configuration

11 Nov 19:05
11f4966
Compare
Choose a tag to compare

Bugfixes

This version fixes a problem with the namespace events after creating a new project.

External DNS annotations

This version introduces support for external DNS annotations on the Nginx load balancer service.
To activate it, the following configurations can be changed in your project configuration:

# enable annotations on the load balancer service
NGINX_LOADBALANCER_ANNOTATIONS_ENABLED=false

# external DNS hostname
NGINX_LOADBALANCER_ANNOTATIONS_EXT_DNS_HOSTNAME="domain.tld"
# external DNS TTL time in seconds
NGINX_LOADBALANCER_ANNOTATIONS_EXT_DNS_TTL=60

These values are replacing the annotations block in the nginx_ingress_helm_values.yaml:

    annotations:
      enabled: ##NGINX_LOADBALANCER_ANNOTATIONS_ENABLED##
      external_dns_hostname: "##NAMESPACE##.##NGINX_LOADBALANCER_ANNOTATIONS_EXT_DNS_HOSTNAME##"
      external_dns_ttl: ##NGINX_LOADBALANCER_ANNOTATIONS_EXT_DNS_TTL##

The default for new DNS names is <namespace>.<ext_dns_host>.
This version supports no direct UI edit (but it is possible to abuse e.g. the Jenkins Welcome Message).

Please update this file in the project templates, if modified templates are used.

If own charts are used, please update the following files in the nginx-ingress-controller folder: