Open Service Catalog Manager (OSCM) is an open source application with enterprise quality level. It supports a bright spectrum of use cases, from SaaS Marketplaces to Enterprise IaaS Stores. It offers ready-to-use service provisioning adapters for IaaS providers like Amazon Web Services (AWS) and OpenStack, but is also open for integrating other platforms.
Service Providers can define their services with flexible price models and publish them to an OSCM Marketplaces. The Service Provider can decide on using the OSCM Billing Engine for the service usage cost calculation, or integrate an external one. Customers can subscribe to and use the services.
OSCM supports configurable authentication. It can use its own user store, but also existing LDAP systems. OSCM can participate in an identity federation using SAML2 profiles for SSO (Single-Sign On) and integrate with any SAML2-enabled authentication server (e.g. OpenAM or ADFS).
Find more details on the OSCM homepage.
How about OSCM in containers, easily installed and updated, running in an Kubernetes cluster? OSCM on Apache TomEE with small session footprint, short startup and failover times? OSCM services for provisioning containerized applications with Kubernetes helm charts?
Find what's new in this release and what's coming next.
All contributions are welcome - Open Service Catalog Manager uses the Apache 2.0 license and requires the contributor to agree with the OSCM Individual CLA (ICLA). If the contributor submits patches on behalf of a company, then additionally the OSCM Corporate CLA (CCLA) must be agreed. Even if the contributor is included in such CCLA, she/he is still required to agree with the ICLA. To submit the CLAs please:
The latest releases can be found here.
Please follow this guide from top to bottom, this is the easiest way to avoid errors later on.
Installed JDK 8u121 or higher.
PostgreSQL 9.3 database installer.
GlassFish 4.1.2 server installer.
Eclipse ECJ 4.5.1 library.
Apache Ivy 2.4.0 library.
<postgres-root-dir>/data/postgresql.conf
properties:Property | Value | Comment |
---|---|---|
max_prepared_transactions |
50 |
Sets the maximum number of transactions that can simultaneously be in the "prepared" state. |
max_connections |
210 |
Determines the maximum number of concurrent connections to the database server. |
listen_addresses |
'*' |
Specifies the TCP/IP address(es) on which the server is to listen for connections from client applications. |
<postgres-root-dir>/data/pg_hba.conf
properties:host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust
host all all <host-ipv6>/128 trust
<glassfish-root-dir>/glassfish/config/asenv.bat
<glassfish-root-dir>/glassfish/config/asenv.con
<glassfish-root-dir>/mq/etc/imqenv.conf
/oscm-devruntime/javares/local/
. You can also look for examples in this directory:Property | Note |
---|---|
/oscm-devruntime/javares/local/<hostname>/db.properties |
Database connection details. |
/oscm-devruntime/javares/local/<hostname>/db-app.properties |
APP database connection details. |
/oscm-devruntime/javares/local/<hostname>/integration.properties |
Mostly server settings like ports etc. |
/oscm-devruntime/javares/local/<hostname>/configsettings.properties |
Mostly server settings like ports etc. |
/oscm-devruntime/javares/local/property-templates |
Folder containing templates files. |
-Dhttp.proxyHost=<proxy-host> -Dhttp.proxyPort=8080
.Script | Note |
---|---|
/oscm-devruntime/javares/devscripts/build-dev-Database.xml |
Handles database operations, e.g. initialization, schema update etc. |
/oscm-devruntime/javares/devscripts/build-dev-GlassFish.xml |
Handles server tasks like starting or stopping domains. |
/oscm-devruntime/javares/devscripts/build-dev-PackageDeploy.xml |
Used to build application source code and to deploy its artifacts. Add "proxyuser" and "proxypassword" properties to setproxy tag if your proxy needs authentication. |
/oscm-portal-webtests/run_in_eclipse.xml |
Executes UI tests. |
/oscm-integrationtests-setup/resources/build.xml |
Used to create all neccessary resources for integration environment. |
All.BUILD
target from /oscm-devruntime/javares/devscripts/build-dev-PackageDeploy.xml
. The result will be located in /oscm-build/result
. If you encounter an out of memory error, increase the VM heap size by using the -Xmx
argument in the configuration of your Java runtime for executing ANT.STANDALONE.setup
target from /oscm-integrationtests-setup/build.xml
. It will also deploy all artifacts to the appropriate domains.After the environment is set up, developers can use the Ant targets to build/redeploy only specific modules. For example, to redeploy the portal, Portal.BUILD
and then Portal.REDEPLOY
should be run one after another.
OSCM uses eclipse-birt-runtime to generate reports. After OSCM is deployed, it is time for you to download and deploy eclipse-birt-runtime. You can find it under the link. Birt.war is the application you should be interested in. We advise you to get the latest version. When you have deployed the application, you may upload all the reports that we have designed for you. The reports are delivered with every release in oscm-reports.zip. Just unpack the content to a folder on GlassFish where the application has been deployed (usually: ${glassfishHome}\glassfish\domains\{domain}\applications\{ecilpse_runtime_folder}).