Skip to content

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

Release 2.7.0

04 Nov 20:23
f7a0437
Compare
Choose a tag to compare

This release mainly updates the underlying fyne.io framework to version 1.4.0. With this update the UI is much better and gets a fresher color scheme.

Release 2.6.0 - Introduction of multiple secret files

28 Oct 07:44
cbb7408
Compare
Choose a tag to compare

To set up multiple secret files, simply add new files in the same directory where the secrets.sh(.gpg) is located. These files need the prefix secrets_.

Release 2.4.0 - Support Multi Cluster Certificates

15 Jul 23:58
683e74d
Compare
Choose a tag to compare
  • Bugfix that Kubernetes Server certificate has not been replaced in the template
  • Adding support for multiple cluster certificates
    • The configuration KUBERNETES_SERVER_CERTIFICATE is now a fallback/default configuration.
    • With KUBERNETES_SERVER_CERTIFICATE_<context_name> it is now possible to add certificates for multiple contexts.
      The context name should not contain spaces!
    • Examples:
      • KUBERNETES_SERVER_CERTIFICATE_CLUSTER_A is for the context cluster_a
      • KUBERNETES_SERVER_CERTIFICATE_PRODUCTION-CLUSTER is for the context production-cluster

Release 2.3.0 - Adding Kubernetes Context Switch

15 Jul 22:37
c4dbcfd
Compare
Choose a tag to compare

2.3.0

Update of libraries

12 Jul 15:00
a88f926
Compare
Choose a tag to compare
  • Update of libraries:
    • fyne: 1.3.2
      • fyne had some cache issues with go proxy server, which are solved with the new version
    • crypto (latest branch)

Fyne Update and improved CLI support

07 Jul 22:22
8f5c6dc
Compare
Choose a tag to compare
  • Update of fyne to 1.3.1
  • Better support for server only environments
    • It is possible to use go run -tags cli k8s-jcasc-mgmt.go to avoid compile with fyne and its dependencies (gcc, x11,...)

Introducing new GUI and refactoring for better separation between UI and functionality

05 Jul 16:14
f6c3309
Compare
Choose a tag to compare

Introducing new UI

  • K8S-Jcasc-Management supports now native UIs for the following platforms:
    • Windows
    • Linux and BSD
    • MacOS X

This was realized with the fyne framework.

To use K8S-JcasC-Management on a CLI, you can start it with the -cli flag.

Build hints

If you have trouble compiling the project, please visit the fyne developer site first to check the prerequisites.
On Windows, it is recommended to install TDM-GCC - tdm-gcc.tdragon.net, which works very easily. It can be required to set the PATH variable to the TDM-GCC directory if the go compiler still wants a GCC.

Using on server-systems only (without GUI)

If you have trouble or if you want to use it on a server without X11, you can also exchange the !ignore and ignore in first-line comment at the /app/app_cli.go and /app/app_gui.go file.
Golang will then use the app_cli.go file to compile and ignores the GUI implementation completely.

Screenshots

Welcome (Windows)

alt text

Deployment (Mac Dark Theme)

alt text

Create Project (Mac Light Theme)

alt text

Hotfix for encrypted password problem

24 Jun 11:34
de6f390
Compare
Choose a tag to compare
  • Hotfix for configuration of encrypted users.
    • Fixes the issue, that JENKINS_MASTER_ADMIN_PASSWORD_ENCRYPTED and JENKINS_MASTER_PROJECT_USER_PASSWORD_ENCRYPTED need encrypted password surrounded with ' characters, that the bash version will not interpret this configuration as arguments.

Namespace creation and logging by configuration

11 Jun 14:10
Compare
Choose a tag to compare
  • New menu to support to "create namespace" from k8s-jcasc-mgmt
  • Default logging enabled.
    • k8s_jcasc_mgmt.cnf has now the following 3 parameters:
      • K8S_MGMT_LOGGING_LOGFILE: default is output.log. This defines the default logfile. This value can be overwritten with the -logfile argument or simply comment it to disable it.
      • K8S_MGMT_LOGGING_ENCODING: default is: console. Allows the default logging type (console or json)
      • K8S_MGMT_LOGGING_OVERWRITE_ON_START: default is: true. Defines if logfile should be re-created on start. In this case, the system moves the old log (if exists) to the defined logfile name with suffix .1. Example: output.log.1.

Release

08 Jun 01:04
Compare
Choose a tag to compare

Features:

  • create new projects for Jenkins administration
  • manage secrets
    • encrypt/decrypt secrets for secure commit to a VCS (version control system)
    • apply secrets to Kubernetes
      • for each project while installation or as an update (applySecrets)
      • for all known namespaces, that are configured in the ip_config.cnf file (applySecretsToAll)
    • store secrets globally for easy administration
    • store secrets per project for more security
  • manage the Jenkins instances for a namespace with the project configuration
    • install
      • create namespace if it does not exist
      • install Jenkins
      • install nginx-ingress-controller per namespace (if configured)
      • install load balancer and ingress for Jenkins
    • uninstall
      • uninstall Jenkins installation
      • uninstall nginx-ingress-controller per namespace (if configured)
      • uninstall load balancer and ingress for Jenkins (other ingress routes will not be changed)
    • upgrade
  • internal log viewer
  • logging in JSON or console format

-> This release is equal to the 1.12.1 version of the bash implementation (https://github.com/Ragin-LundF/k8s-jcasc-management).