Env variable for rundeck.feature.jobLifecyclePlugin.enabled?

3/31/2020

I was trying to run rundeck on docker image on kubernetes. I wanted to know if there is an env variable for rundeck.feature.jobLifecyclePlugin.enabled to be added on the docker compose file. I couldn't find it anywhere in the documents. Would appreciate any help with this.

-- Harsha Patil
docker
docker-compose
environment-variables
kubernetes
rundeck

1 Answer

3/31/2020

I tried using RUNDECK_FEATURE_JOBLIFECYCLEPLUGIN_ENABLED: 'true' on "environment" section on compose file like this, but that create this line on rundeck-config.properties file: rundeck.feature.joblifecycleplugin.enabled=true (all lowercase, and we need rundeck.feature.jobLifecyclePlugin.enabled=true, the configuration is case sensitive).

You can add it using Remco. Take a look at this (check the "Extending Configuration" section), here a good example to test.

In my case, I add this in rundeck-config-extra.properties file (at mydocker/remco/templates/ path).

# adding extra stuff to rundeck-config.properties file
rundeck.feature.jobLifecyclePlugin.enabled={{ getv("/rundeck/feature/joblifecycleplugin/enabled", "true") }}

And this on rundeck-config.properties-extra.toml (at mydocker/remco/resources.d/ path)

[[template]]
    src         = "${REMCO_TEMPLATE_DIR}/rundeck-config-extra.properties"
    dst         = "${REMCO_TMP_DIR}/rundeck-config/rundeck-config-extra.properties"
    mode        = "0644"

My docker-compose.yaml (at mydocker/ path):

version: '3'

services:
  rundeckserver:
    build:
      context: .
      dockerfile: Dockerfile
      args:
        url: http://localhost:4440
    ports:
      - "4440:4440"
    restart: always

My Dockerfile (at mydocker/ path, also copy an example plugin obtained here):

FROM rundeck/rundeck:3.2.4

COPY --chown=rundeck:root remco /etc/remco
COPY --chown=rundeck:root volume/job-lifecycle-3.2.3-20200221.jar /home/rundeck/libext/
ARG url=""
ENV RUNDECK_SERVER_ADDRESS=0.0.0.0
ENV RUNDECK_GRAILS_URL=$url

Then you need to do (at mydocker/ path):

docker-compose build

And later:

docker-compose up

That adds this line in the rundeck-config.properties file:

# adding extra stuff to rundeck-config.properties file
rundeck.feature.jobLifecyclePlugin.enabled=true

Finally, take a look at the result.

-- MegaDrive68k
Source: StackOverflow