Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,21 @@ Maven reactor modules (see root `pom.xml`):

- **application** — the Spring Boot app. `AtlasApplication` is a `@SpringBootApplication` that scans `org.eclipse.dirigible` and excludes Spring's datasource/JPA auto-config (Dirigible manages its own datasources). Its `pom.xml` is the real definition of the edition: it lists every Dirigible component group included (core, security, database, engines, IDE backend/UI, APIs, templates) and the bundled JDBC drivers (Postgres, MongoDB, SAP HANA `ngdbc`, Snowflake, H2). The Spring Boot repackage produces the runnable jar. Also contains the `Dockerfile`.
- **branding** — codbex/Atlas logo, favicon, and `project.json` packaged as Dirigible resources under `META-INF/dirigible/atlas-branding/`.
- **components/ui/menu-help** and **components/ui/view-welcome** — custom Dirigible UI components that *override* the stock Dirigible ones (the stock `dirigible-components-ui-menu-help` and `dirigible-components-ui-view-welcome` are explicitly excluded in `application/pom.xml`). These are resource-only modules (HTML/JS + `.extension`/`config` files under `META-INF/dirigible/`), no Java.
- **components/ui/menu-help** and **components/ui/view-welcome** — custom Dirigible UI components that *override* the stock Dirigible ones (the stock `dirigible-components-ui-menu-help` and `dirigible-components-ui-view-welcome` are explicitly excluded in `application/pom.xml`). These are resource-only modules (HTML/JS + `.extension`/`config` files under `META-INF/dirigible/`), no Java. They are **forks of upstream files**, so diff them against the matching Dirigible module on every version bump — they drift silently (translations must live in `i18n/<locale>/*.json`, the only folder `platform-core/extension-services/locales.js` scans).
- **integration-tests** — Selenide-based UI and API integration tests against the assembled application.

## Dirigible version

The Dirigible version is **not** declared here: `codbex-platform-parent` pins it through the `dirigible.version` property, and parent releases track Dirigible releases 1:1 (parent 14.17.0 -> Dirigible 14.17.0). Bumping the edition therefore means bumping the parent version in the root `pom.xml`. A child pom *can* override `dirigible.version` to reach a Dirigible release whose parent is not published yet, but prefer the parent bump.

Bumps are not always mechanical - Dirigible removes things:

- **The OData engine was extracted in 14.16.0.** `dirigible-dependencies` stopped managing `com.codbex.olingo:olingo-odata2-lib`, so the version-less declaration in the root pom failed the build at model-read time, and the CXF / `javax.validation` / `javax.servlet` exclusions on `group-engines` became dead weight (verified with `dependency:tree`). Both were removed.
- **The AngularJS and TypeScript application templates were removed in 14.16.0**, along with the AngularJS form-builder generator. Because Atlas depends on `group-templates` as a whole rather than on individual templates, nothing had to change here - but an edition that names templates one by one would break.
- **`/` now lands on the Home launchpad** (`resources-home`), which carries no IDE perspectives: IDE assertions must go through `ide.openIde()`.

Since Atlas is the all-in-one edition and depends on the `group-*` aggregators wholesale, a version bump picks up new components automatically - the Intent Driven engine and editor, the Builder and Monitoring shells, the Harmonia + client-Java application stack, document printing and numbering all arrive that way.

## Configuration model

Two layers of config:
Expand Down
20 changes: 0 additions & 20 deletions application/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -71,26 +71,6 @@
<groupId>org.eclipse.dirigible</groupId>
<artifactId>dirigible-components-group-engines</artifactId>
<type>pom</type>
<exclusions>
<exclusion>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
</exclusion>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.cxf</groupId>
<artifactId>
cxf-spring-boot-starter-jaxrs
</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.eclipse.dirigible</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,69 +9,83 @@
* SPDX-FileCopyrightText: 2022 codbex or an codbex affiliate company and contributors
* SPDX-License-Identifier: EPL-2.0
*/
exports.getMenu = () => ({
systemMenu: true,
id: 'help',
menu: {
translation: {
key: 'common:help',
},
label: 'Help',
items: [
{
translation: {
key: 'menu-help:portal',
},
label: 'Help Portal',
action: 'open',
link: 'https://www.codbex.com/documentation/tooling/',
separator: false
import { repository } from "sdk/platform";

export function getMenu() {
const hasOpenApi = repository.getResource('/registry/public/view-swagger/project.json').exists();
const config = {
systemMenu: true,
id: 'help',
menu: {
translation: {
key: 'common:help',
},
{
translation: {
key: 'menu-help:support',
label: 'Help',
items: [
{
translation: {
key: 'menu-help:portal',
},
label: 'Help Portal',
action: 'open',
link: 'https://www.codbex.com/documentation/tooling/',
separator: false
},
label: 'Contact Support',
action: 'open',
link: 'https://www.codbex.com/contact/',
separator: false
},
{
translation: {
key: 'menu-help:pricing',
{
translation: {
key: 'menu-help:support',
},
label: 'Contact Support',
action: 'open',
link: 'https://www.codbex.com/contact/',
separator: false
},
label: 'Pricing Plans',
action: 'open',
link: 'https://www.codbex.com/pricing/',
separator: false
},
{
translation: {
key: 'menu-help:whatsNew',
{
translation: {
key: 'menu-help:pricing',
},
label: 'Pricing Plans',
action: 'open',
link: 'https://www.codbex.com/pricing/',
separator: false
},
label: 'What\'s New',
action: 'open',
link: 'https://www.codbex.com/technology',
separator: false
},
{
translation: {
key: 'menu-help:updates',
{
translation: {
key: 'menu-help:whatsNew',
},
label: 'What\'s New',
action: 'open',
link: 'https://www.codbex.com/technology',
separator: false
},
label: 'Check for Updates',
action: 'open',
link: 'https://www.codbex.com/products/',
separator: true
},
{
id: 'about',
translation: {
key: 'menu-help:about',
{
translation: {
key: 'menu-help:updates',
},
label: 'Check for Updates',
action: 'open',
link: 'https://www.codbex.com/products/',
separator: true
},
label: 'About',
action: 'openWindow',
separator: false
}
]
{
id: 'about',
translation: {
key: 'menu-help:about',
},
label: 'About',
action: 'openWindow',
separator: false
}
]
}
};
if (hasOpenApi) {
config.menu.items.splice(5, 0, {
label: 'OpenAPI',
action: 'open',
link: '/services/web/view-swagger/ui/',
separator: true
});
}
});
return config;
};
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ welcome.controller('WelcomeController', ($scope, $http, WorkspaceService, Templa
controlType: 'input',
type: 'text',
label: template.parameters[i].label,
require: true,
required: template.parameters[i].required === true,
};
}
return form;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
<script src="js/welcome.js" type="text/javascript"></script>
<style>
.imgColor path {
background-color: var(--fdAvatarBackgroundColor);
fill: var(--fdAvatarColor);
background-color: var(--accent);
fill: var(--accent-foreground);
}

</style>
Expand Down Expand Up @@ -57,7 +57,7 @@ <h3 class="fd-section__title">Welcome to Atlas</h3>
<p class="fd-text">You can create server-side scripting services by using the <bk-link href="http://www.codbex.com/documentation/platform/sdk" target="_blank">Enterprise Javascript API</bk-link>
or just design your web pages in HTML5 by using your favorite client-side framework.
<br>
All source code is licensed under the <bk-link href="https://www.eclipse.org/legal/epl-v20.html" target="_blank">Eclipse Public License - v 2.0</bk-link> and maintained at <bk-link href="https://github.com/codbex/codbex-hyperion"
All source code is licensed under the <bk-link href="https://www.eclipse.org/legal/epl-v20.html" target="_blank">Eclipse Public License - v 2.0</bk-link> and maintained at <bk-link href="https://github.com/codbex/codbex-atlas"
target="_blank">GitHub</bk-link>.
</p>
</section>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
import org.eclipse.dirigible.integration.tests.api.java.db.SchemaExportImportIT;
import org.eclipse.dirigible.integration.tests.api.java.messaging.MessagingFacadeIT;
import org.eclipse.dirigible.integration.tests.api.javascript.cms.CmsSuiteIT;
import org.eclipse.dirigible.integration.tests.api.rest.ODataAPIIT;
import org.eclipse.dirigible.integration.tests.ui.tests.*;
import org.eclipse.dirigible.integration.tests.ui.tests.camel.*;
import org.junit.platform.suite.api.SelectClasses;
Expand All @@ -40,10 +39,11 @@
DeclineLeaveRequestBpmIT.class, //
GitPerspectiveIT.class, //
HomepageRedirectIT.class, //
IntentBuilderShellIT.class, //
MailIT.class, //
MessagingFacadeIT.class, //
MultitenancyIT.class, //
ODataAPIIT.class, //
MonitoringShellIT.class, //
MultitenancyHarmoniaIT.class, //
SchemaExportImportIT.class, //
SecurityIT.class, //
TerminalIT.class//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,27 @@

class HomePageIT extends AtlasIntegrationTest {

/**
* Static copy on the Home landing page - deterministic, unlike the user-dependent greeting.
*/
private static final String HOME_LANDING_TAGLINE = "Everything starts here. Pick where you want to work today.";

/**
* The root path lands on the Home launchpad, which carries no IDE perspectives - the Workbench
* welcome view is asserted separately.
*/
@Test
void testOpenHomepage() {
void testOpenHomePage() {
ide.openHomePage();

browser.assertElementExistsByTypeAndText(HtmlElementType.SPAN, "Atlas");
browser.assertElementExistsByTypeAndText(HtmlElementType.PARAGRAPH, HOME_LANDING_TAGLINE);
}

@Test
void testOpenWorkbench() {
ide.openIde();

browser.assertElementExistsByTypeAndText(HtmlElementType.HEADER3, "Welcome to Atlas");
}
}
9 changes: 1 addition & 8 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.codbex.platform</groupId>
<artifactId>codbex-platform-parent</artifactId>
<version>14.14.0</version>
<version>14.17.0</version>
</parent>

<name>codbex - atlas - parent</name>
Expand Down Expand Up @@ -156,13 +156,6 @@
<artifactId>h2</artifactId>
</dependency>

<!-- Olingo -->
<dependency>
<groupId>com.codbex.olingo</groupId>
<artifactId>olingo-odata2-lib</artifactId>
<type>pom</type>
</dependency>

</dependencies>

<dependencyManagement>
Expand Down
Loading