VLINGO XOOM PLATFORM SDK
Use the VLINGO XOOM OSS platform SDK for rapid delivery of low-code to full-code Reactive, Event-Driven Microservices and Applications using DOMA, DDD, and other approaches.
Docs: https://docs.vlingo.io/
Getting started
Prerequisites:
- Java JDK 8 or greater
Maintaining the Libraries
Release process
See RELEASE_HOW_TO for the release process.
Local builds
To build all platform modules locally, clone all the modules (or pull the latest changes),
and execute the install
phase with the modules
profile activated:
./pull.sh
mvn clean install -Pmodules
CI build configuration
- GitHub Organisation secrets
RELEASE_GITHUB_TOKEN
- Use the token on the VLINGO orgDEPLOY_GITHUB_TOKEN
- GitHub token for publishing to GitHub packagesMAVEN_GPG_PRIVATEKEY
- gpg key used to sign Maven packagesMAVEN_GPG_PASSPHRASE
- password for the gpg keyOSSRH_USERNAME
- username for the Sonatype OSSRH Maven repositoryOSSRH_TOKEN
- password for the Sonatype OSSRH Maven repositorySLACK_WEBHOOK
- Webhook for slack notifications, can be generated here
Deployment to Pivotal Cloud Foundry
You can refer to this link to read the documentation about how to deploy to Pivotal Cloud Foundry platform.
In our examples repository you have an example of how to deploy two services working together.
Snapshots repository
VLINGO snapshots are published to both Sonatype and GitHub Packages.
All VLINGO libraries are configured to use Sonatype for snapshots:
<project>
<!-- ... -->
<repositories>
<repository>
<id>ossrh-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
<releases><enabled>false</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>ossrh-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
<releases><enabled>false</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</project>
Snapshots can also be installed from GitHub Packages:
<project>
<!-- ... -->
<repositories>
<repository>
<id>github</id>
<url>https://maven.pkg.github.com/vlingo/xoom-platform</url>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>github</id>
<url>https://maven.pkg.github.com/vlingo/xoom-platform</url>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</project>
GitHub requires authentication with a Personal Access Token
to use their Maven repository.
In order to build VLINGO libraries locally, you will need to configure the following in your ~/.m2/settings.xml
:
<settings>
<servers>
<server>
<id>github</id>
<username>GITHUB-USERNAME</username>
<password>GITHUB-PERSONAL-ACCESS-TOKEN</password>
</server>
</servers>
</settings>
Replace GITHUB-USERNAME
with your GitHub username, and GITHUB-PERSONAL-ACCESS-TOKEN
with your Personal Access Token.
Personal Access Tokens can be created in Settings > Developer Settings > Personal Access Tokens on GitHub.
Remember to create the token with read:packages
scope.
License (See LICENSE file for full license)
Copyright © 2012-2022 VLINGO LABS. All rights reserved.
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/.