This section will guide you to understand the concept of some key elements in
After setting up a new
OpenCatapult instance, you will get a blank workspace. You can start to fill it with:
- User Account
- External Service Connection
- Engine Registration
- Task Provider Registration
Administrators can add as many application users as they want. Each user can be assigned to a different role which will affect on her ability to access
Project is a unit of work which your team will usually work with to create an application.
In this Project scope, you can define:
- Project Member
- Data Model
- Job Definition
- Job Queue
Project member is user who has certain access to a project with specific role. Project member should be an active application user.
Data Model is a logical structured entity which is used by code generators for various purposes. It is usually used to generate tables in database, controllers, pages, etc.
Data Model consists of many Properties, which usually can be translated into columns in database world.
Job Definition is a unit of work which is used to define specific action. It may consist of many Task definitions.
For example, you can define a job which will sequentially execute the following tasks: generate code, push it to a code repository, and deploy it to a hosting service.
After defining Job, you can put it in Queue so the Engine can pick and execute it.
External Service Connection
When defining a Job, it is often that you need to include some information which is required to connect to external services, e.g. GitHub, Azure, etc. Instead of filling them directly in Task definition, it is recommended that you fill them via External Service Connection. It will give you some advantages:
- you don't need to enter the same information over and over again in different Tasks
- it can be reused accross projects
- it is more secure because the values are encrypted
Engine is a component in
OpenCatapult which will execute queued jobs. For scaling purpose you can have multiple Engine instances in a
OpenCatapult system. However you need to register them in advance to give them permission to access certain elements.
Task Provider Registration
Task provider is the extension of Engine which implement specific action. Task provider needs to be registered as well to:
- allow task provider to ask for specific configuration input from user
- allow syncronization of the installed task providers across Engine instances