Logo

    Home

    Documentation

    Use Cases

    Training

    Applications

    Release Notes

    Create an empty Db and import a schema

    Create an empty Db and import a schema

    • Description
    • How to use it
    • Prerequisites
    • 1. Setup folders and files
    • 2. Make workspace aware
    • 3. Adding an additional DB to the repo
    • 4. Add the db to the CircleCI script

    Description

    Setting up a new OpenEdge Database in the development workspace within Gitpod requires careful configuration, including the creation of a definition file to specify the database parameters.

    How to use it

    Prerequisites

    • Get a Progress OpenEdge schema and data df/st files
    • setup files and folders to hold the database files

    1. Setup folders and files

    • create folder src/backend/DB/<dbname>
    • within
      • upload <dbname>.df file (mandatory schema)
      • upload <dbname>.st file (optional data, but it’s a mandatory file)
      • add default param.pf, with content
      • -d dmy -yy 1950 -numsep 46 -numdec 44

    2. Make workspace aware

    • add missing config for new db assure ports do not overlap with other use
    • OpenEdge Config: /openedge-project.json
    • {
            "name": "<dbname>",
            "connect": "-db <dbname>-H localhost -S 30002 -ld <dbname>",
            "dumpFile": "/build-one/swat/backend/DB/<dbname>/<dbname>.df",
            "aliases": []
          }
    • Docker Workspace /.build/compose/workspace.docker-compose.yml
    • Apply changes
      • b1 down
      • b1 up
    • Validate a new container came up, named like
    • gitpod-<dbname>_db_server-1
    • Commit and push all changes to make it available to everyone.

    3. Adding an additional DB to the repo

    For that follow the steps above and additional add the following in /.build/compose/workspace.docker-compose.yml (Adjusting the variable <NAME_OF_DB1> with the corresponding names)

    4. Add the db to the CircleCI script

    • Add the following code to the build.xml
    • <PCTCreateBase destDir="${tempdir}" dbName="${MYDB.name}" schemaFile="${MYDB.schemaFile}" structFile="${MYDB.structFile}" multiTenant="true"/>
      
      
      <DBConnection dbName="MYDB" dbDir="${tempdir}" readOnly="true"/>
    • Add the following code to the project-settings.xml
    • <property name="backend.dblist" value="smartdb,it4main,MYDB"/>

    If you want to add the selfhdls to your DB please see Build.One GUID: selfhdlBuild.One GUID: selfhdl and OE-DB Table-Definition filesOE-DB Table-Definition files

    Back to DocumentationDocumentation

    Back to Home Page

    Logo
    <dbname>_db_server:
        image: docker.cloudsmith.io/buildone/repository/buildone-oe-workspace-runtime:${BUILDONE_VERSION:-latest}
        restart: unless-stopped
        command: /opt/scripts/dbserver.sh /workspace/db/<dbname>/<dbname>"-S 30002 -minport 30031 -maxport 30035 -n 50"
        networks:
          app-network:
        ports:
          - 30002:30002
          - 30031-30035:30031-30035
        volumes:
          - /psc:/psc
          - /usr/java:/usr/java
          - /workspace/db:/workspace/db