To use the OpenEdge DevOps Framework (OEDF) Gradle plugin, ensure that you have the following:
  • Certified Progress OpenEdge® 12.2 or later.
  • OpenEdge ABL installed (version 12.2 or later).
  • Gradle 9.3.1.
  • JDK 17 or later.
    Note: Running OEDF 2.4 with Gradle 9.3.1 on JDK 11 is not supported because Gradle 9.x.y requires JDK 17 or later.
  • OEDF is supported on AIX, Linux, and Windows, which is consistent with the platforms supported by OpenEdge 12.2.x and later versions. Oracle ended Java support for Solaris with JDK 15. Since OEDF 2.4 requires JDK 17 or later, it does not run on Solaris. For Solaris environments, you can continue using OEDF 2.3.
  • PCT (Progress Compile Tool):
    • By default, the plugin uses the PCT version available in your OpenEdge installation (for example, the DLC directory), or the default PCT available in your environment.

    • Optionally, you can use a different PCT version by setting the PCT_VERSION property using:

      • A system property
      • A Gradle property
      • An environment variable
  • An ABL project
  • A basic understanding of Gradle

Set up the environment

OpenEdge provides the progradle.bat script to simplify the OpenEdge DevOps Framework (OEDF) setup on your machine. This script prepares the environment required to run the Gradle builds that use the OEDF plugins.

When you execute the progradle.bat script, the following actions are performed automatically:
  • The specified Gradle version is installed when you run the script for the first time.
  • The OpenEdge JDK is configured to run the Gradle build scripts.

As an alternative, you can install and configure the supported versions of Gradle and Java separately. For more information, see the OpenEdge Platform and Product Availability Guide for each OpenEdge release.

Determine the Gradle version used by ProGradle

ProGradle determines the Gradle version from the Gradle Wrapper configuration file,gradle-wrapper.properties, located in the following directory:

%DLC%\gradle\wrapper-scripts\gradle\wrapper\

The distributionUrl property in this file specifies the Gradle distribution used by ProGradle. The configured Gradle version may differ across OpenEdge releases.

For example:

distributionUrl=https://services.gradle.org/distributions/gradle-<gradle-version>-bin.zip

Before using OpenEdge DevOps Framework (OEDF), verify that the Gradle version configured in gradle-wrapper.properties matches the version required by your OEDF release.

To determine the supported Gradle version for your OpenEdge and OEDF versions, use the following OpenEdge + OEDF → Gradle compatibility matrix:
OpenEdge version OEDF 1.x OEDF 2.0-2.2 OEDF 2.3.0 OEDF 2.4.x
OpenEdge 12.2 Gradle 5.6.x Gradle 7.3.3 Gradle 7.6.x or 8.2.x Gradle 9.3.x (requires JDK 17 for Gradle run-time)
OpenEdge 12.8 Gradle 5.6.x Gradle 7.3.3 Gradle 7.6.x or 8.2.x Gradle 9.3.x
OpenEdge 13.0 Gradle 5.6.x Gradle 7.3.3 Gradle 7.6.x or 8.2.x Gradle 9.3.x

If the configured Gradle version does not match the version required by your OEDF release, update the distributionUrl property as described in the following Configure the Gradle version used by ProGradle section.

Note: OEDF 2.4.x requires Gradle 9.3.x, which requires JDK 17 or later as the Gradle run time. When using OpenEdge 12.2.x with Gradle 9.3.x, ensure that JDK 17 or later is available for Gradle execution.

Configure the Gradle version used by ProGradle

When the configured Gradle version does not match the version required by OEDF, update it accordingly. Specify the required later Gradle version if the configured version is earlier than required; otherwise, specify the required earlier Gradle version.

Before changing the configured Gradle version, verify the compatibility requirements for your OEDF release and Java run-time environment.

To configure the Gradle version used by ProGradle, perform the following steps:

  1. In Proenv, run the following command to stop all running Gradle daemons:
    progradle --stop

    Stopping existing daemons prevents version conflicts and ensures that ProGradle uses the updated Gradle Wrapper configuration.

  2. From the %DLC%\gradle\wrapper-scripts\gradle\wrapper location, open the gradle-wrapper.properties file and locate the distributionUrl property, which appears similar to the following:
    distributionUrl=https://services.gradle.org/distributions/gradle-<current-gradle-version>-bin.zip
  3. Replace the current Gradle version with the required Gradle version. For example:
    distributionUrl=https://services.gradle.org/distributions/gradle-<required-gradle-version>-bin.zip
  4. Save the file.

    After you save the file, ProGradle uses the Gradle version specified by the updated distributionUrl property during subsequent executions.

Note: If the required Gradle version is not already available locally, the Gradle Wrapper downloads it automatically the next time you run a ProGradle command after updating the distributionUrl property.

Verify the Gradle version

After you update the Gradle Wrapper configuration, verify that ProGradle uses the expected Gradle version by performing the following steps in Proenv:

  1. Run the following command and verify that the output displays the Gradle version specified in the distributionUrl property:
    "%DLC%\bin\progradle.bat" -v
  2. Run a sample task with informational logging enabled:
    "%DLC%\bin\progradle.bat" --info helloProGradle

    Verify that the build completes successfully and that ProGradle uses the expected Gradle version.

Configure a property

OpenEdge DevOps Framework (OEDF) provides options to configure project builds by setting properties. It supports numerous properties depending on the project requirements. For example, when you set the PCT_VERSION property, it instructs OEDF to use PCT from Apache Maven instead of using it from the OpenEdge installation path.

You can configure a property in any of the following ways:
  1. Set as a system property by running the following CLI command:
    -DPCT_VERSION=<PCT-version>
  2. Set as a Gradle property.

    For example, set PCT_VERSION=<PCT-version> in the gradle.properties file.

  3. Set as an environment variable.

The preferred order of precedence for this property (from highest to lowest) is 1 > 2 > 3.