To get started with deployment of OpenEdge on AWS AMI using CloudFormation templates repository, perform the following steps:
  1. Clone the repository using the following commands:
    git clone --recurse-submodules https://github.com/progress-openedge/openedge-cloud-templates-aws.git
    	cd openedge-cloud-templates-aws
  2. Switch to the branch that matches your desired OpenEdge release. For example, release-12.2.x or release-12.8.x:
    git checkout release-12.8.x   # or release-12.2.x, etc.
  3. You can either create your own deployment packages, such as db.tar.gz, pas.tar.gz, and web.tar.gz, or use the sample deployment packages provided in the deploy/cfn/ directory of this repository.

    For more information about how to create your own deployment packages, see Create application packages to deploy on AWS.

    1. If you use the sample deployment packages, update them with your own progress.cfg file by running the scripts/update_tar_with_license.sh script. For example:
      ./scripts/update_tar_with_license.sh <path-to-tar.gz> <path-to-progress.cfg>

      Run this script for both—db.tar.gz, pas.tar.gz packages.

      Ensure you use the correct progress.cfg file that matches your OpenEdge version. For example, if you check out the release-12.8.x branch, use the progress.cfg specific to OpenEdge version 12.8.

  4. To deploy the solution using AWS CloudFormation, provide the following specific parameters in the deployment.conf configuration file.
    Parameter Description
    PublicBucket Name of your public S3 bucket, for templates and sub-modules.
    PrivateBucket Name of your private S3 bucket, for license and application files.
    KeyPairName Name of your AWS EC2 key pair.
    EmailAddress Email address for notifications or stack alerts.
    DeployBucketRegion AWS region for your private bucket. The default is set to us-east-1.
    DBDeployPackage Name of your database deployment package file. The default is set to db.tar.gz.
    PASOEDeployPackage Name of your PAS for OpenEdge deployment package file. The default is set to pas.tar.gz.
    WebDeployPackage Name of your web deployment package file. The default is set to web.tar.gz.
    AvailabilityZones Comma-separated list of availability zones. The default is set to us-east-1a,us-east-1b.

    For ease of use to get started, the default values are provided for these parameters in the sample deployment.conf provided with the sample deployment packages. You can update them based on your requirements by performing the following steps:

    1. Edit the deployment.conf file in the root of the repository:
      PublicBucket=your-public-bucket-name
      PrivateBucket=your-private-bucket-name
      KeyPairName=your-keypair-name (without .pem extension)
      EmailAddress=your-email@example.com
      DeployBucketRegion=us-east-1
      DBDeployPackage=db.tar.gz
      PASOEDeployPackage=pas.tar.gz
      WebDeployPackage=web.tar.gz
      AvailabilityZones=us-east-1a,us-east-1b
    2. Save the file.
    3. Run the following script to start the deployment:
      ./scripts/create_deployment.sh [stack-name] #stack-name is an optional parameter
      Note: Ensure all prerequisites mentioned in Introduction to OpenEdge AWS Amazon Machine Images are fulfilled and the parameters in deployment.conf are set correctly before running the deployment script.
  5. Open the AWS CloudFormation page in your account and check if the resources are getting created properly.
  6. After the successful creation of the stack, select the Outputs tab and click the WebURL to open the web application.