Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-48562

Inline Environment Variables not replaced in config file

XMLWordPrintable

      I am having an issue pulling in inline environment variables in a Pipeline script. I have a Freestyle Project I want to convert to pipeline.

      I am wanting to create a settings.php file for Drupal or Wordpress.

      Test file

      ${ENV, var="X_DB_USER"}
      ${ENV, var="X_SITENAME"}
      ${ENV, var="DOMAIN_NAME"}
      

      Pipeline:

       

       

      pipeline {
      environment {
      dbName = "test-${env.BUILD_NUMBER}"
      X_SITENAME = "${dbName}"
      X_DB_USER = "mp"
      DOMAIN_NAME = "https://www.example.com"
      }
      agent {
      node {
      label "ww7"
      }
      }
      stages {
      stage("init") {
      steps {
      configFileProvider(
      [
      configFile(
      fileId: 'drupal7-test', 
      replaceTokens: true, 
      targetLocation: "/var/www/${dbName}/www/local.settings.php")
      ]) {
      // some block
      }
      }
      }
      } 
      }
      
      
      

      File output

       

       

      <empty>

       

      If I add a global environment variable it will write to the file, but I am unable to overwrite the values.

       

      X_DB_USER global placeholder
      X_SITENAME global placeholder
      DOMAIN_NAME global placeholder
      

       

       

      Using the web interface to add a file using job parameters I am able to use a file like:

       

      <?php
      $$databases = array (
      'default' =>
      array (
      'default' =>
      array (
      'database' => '${DATABASE_NAME}',
      'username' => '${DATABASE_USER}',
      'password' => '${DATABASE_USER}',
      'host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
      // 'pdo' => array(ATTR_TIMEOUT => 2.0, MYSQL_ATTR_COMPRESS => 1, MYSQL_ATTR_USE_BUFFERED_QUERY => 1),
      ),
      ),
      );
      

       

      How can I use dynamic variables pulled from a Jenkinsfile?

       

            domi Dominik Bartholdi
            michaelpporter Michael Porter
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: